/* 接收数据回调函数 */ static rt_err_t uart_input(rt_device_t dev, rt_size_t size) { /* 串口接收到数据后产生中断,调用此回调函数,然后发送接收信号量 */ rt_sem_release(&rx_sem); return RT_EOK; } static void serial_thread_entry(void *parameter) { int len=0; while (1) { rt_s...
/ 接收数据回调函数 / static rt_err_tuart_input(rt_device_t dev, rt_size_t size) { / 串口接收到数据后产生中断,调用此回调函数,然后发送接收信号量 / rt_sem_release(&rx_sem); return RT_EOK; } static void serial_thread_entry(void parameter) { char ch; while (1) { / 从串口读取一个...
可以使用下面的流程进行挂载。 result = dfs_mount(mtd_dev->parent.parent.name, "/usr", "yaffs", 0, 0); if (result == RT_EOK) { rt_kprintf("Mount YAFFS2 on NAND successfully\n"); } else { result = dfs_mkfs("yaffs", mtd_dev->parent.parent.name); if (result == RT_EOK) { ...
1static rt_err_t rt_stm32_eth_init(rt_device_t dev); 2static rt_err_t rt_stm32_eth_open(rt_device_t dev, rt_uint16_t oflag); 3static rt_err_t rt_stm32_eth_close(rt_device_t dev); 4static rt_size_t rt_stm32_eth_read(rt_device_t dev, rt_off_t pos, void* buffer,...
启用DMA接收,需要在打开设备的时候做一些处理,入口函数为rt_device_open()。主体实现是: rt_err_trt_device_open(rt_device_tdev,rt_uint16_toflag){ ... result =device_init(dev); ... result =device_open(dev, oflag); ... } device_init...
{structrx_msgmsg;rt_err_tresult;msg.dev=dev;msg.size=size;result=rt_mq_send(rx_mq,&msg,sizeof(msg));if(result==-RT_EFULL) {/* 消息队列满 */LOG_E("message queue full!"); }return1; } 挂起代码如下,这段代码在serial_v2.c的_serial_fifo_rx函数中 ...
/* 接收数据回调函数 */staticrt_err_tuart_recv_callback(rt_device_t dev,rt_size_t size){/*接收到串口数据,将接收标志置1*/rk_ok_flag=1;returnRT_EOK;} (5)接收数据(这里我没有按官方的教程使用线程的方式去接收,而是直接在主函数中接收) ...
通过调用rt_device数据结构中的open函数来打开设备。 rt_err_t rt_device_close(rt_device_t dev) 通过调用rt_device数据结构中的close函数来关闭设备。 rt_size_t rt_device_read(rt_device_t dev, rt_off_t pos, void *buffer, rt_size_t size) ...
(cfg->dev_name);if(gt911_client.bus==RT_NULL){LOG_E("Can't find %s device",cfg->dev_name);return-RT_ERROR;}if(rt_device_open((rt_device_t)gt911_client.bus,RT_DEVICE_FLAG_RDWR)!=RT_EOK){LOG_E("open %s device failed",cfg->dev_name);return-RT_ERROR;}gt911_client.client_...
上图通过自动化初始化代码实现文件系统挂载。挂载成功dfs_mount函数返回0.通过调试串口可以看到打印信息。Mount "/dev/sd0" on "/":0 done,说明SD NAND挂载成功。读写文件测试:文件系统正常工作后,就可以运行应用示例,在该示例代码中,首先会使用 open() 函数创建一个文件 text.txt,并使用 write() 函数在...