voidfinsh_thread_entry(void*parameter){intch;/* normal is echo mode */#ifndef FINSH_ECHO_DISABLE_DEFAULTshell->echo_mode=1;#elseshell->echo_mode=0;#endif#if !defined(RT_USING_POSIX) && defined(RT_USING_DEVICE)/* set console device as shell device */if(shell->device==RT_NULL){rt_d...
rt_device,设备管理的框架(模型),提供标准的设备操作接口API,一些外设,可以抽象成设备,进行统一的管理操作,如LCD、Touch、Sensor等。 rt_device的结构 rt_device,是内核对象派生出来的,因此,有些操作,就是在操作内核对象。上几篇笔记研究内核对象的管理,现在发现,看device.c文件,很容易能看懂。 rt_device的使用 R...
RT_Device_Class_RTC, /* RTC设备 */ RT_Device_Class_Sound, /* 声音设备 */ RT_Device_Class_Display, /* 显示设备 */ RT_Device_Class_Unknown /* 未知设备 */ }; 注:uspend、resume回调函数只会在RT_USING_DEVICE_SUSPEND宏使能的情况下才 会有效。 从设备控制块,我们可以看到,每个设备对象都会在...
根据这个配置项可以判断出哪个 BSP 支持了 USB 的功能,也可以借此看出依赖关系。搜索发现 F469 的 bsp 有这个配置项,由下图可以看出:打开这个配置的同时,也利用 select 命令打开了 RT_USING_USB_DEVICE 这个配置。 7、修改正点原子 F429 阿波罗 bsp 下 Kconfig 文件,添加这一段配置项。 8、然后,利用 Env 工...
rt_err_t (*control)(rt_device_t dev, int cmd, void *args); #endif #if defined(RT_USING_POSIX) const struct dfs_file_ops *fops; struct rt_wqueue wait_queue; #endif void *user_data; /**< device private data */ }; 2.1.1 设备类型 type ...
rt_console_set_device(RT_CONSOLE_DEVICE_NAME); #endif #if defined(RT_USING_USER_MAIN) && defined(RT_USING_HEAP) rt_system_heap_init((void*)HEAP_BEGIN, (void*)SRAM_END); #endif } // rtthread tick configuration // 3. add tick interrupt handler ...
#ifdefRT_USING_DEVICEif(_console_device==RT_NULL){rt_hw_console_output(rt_log_buf);}else{rt_uint16_t old_flag=_console_device->open_flag;_console_device->open_flag|=RT_DEVICE_FLAG_STREAM;rt_device_write(_console_device,0,rt_log_buf,length);_console_device->open_flag=old_flag;}#...
rt_hw_i2c_init -> rt_i2c_bit_add_bus -> rt_i2c_bus_device_register -> rt_i2c_bus_device_device_init -> rt_device_register 初始的配置 #ifdef BSP_USING_I2C1#defineI2C1_BUS_CONFIG \{ \ .scl=BSP_I2C1_SCL_PIN, \ .sda=BSP_I2C1_SDA_PIN, \ ...
parent.tx_complete = RT_NULL; #ifdef RT_USING_DEVICE_OPS _hw_pin.parent.ops = &pin_ops; #else _hw_pin.parent.init = RT_NULL; _hw_pin.parent.open = RT_NULL; _hw_pin.parent.close = RT_NULL; _hw_pin.parent.read = _pin_read; _hw_pin.parent.write = _pin_write; _hw_pin....
输入menuconfig,回车,在以下选择中开启Using USB device 随后在Device type(Using custom class by ...