自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(13)
  • 资源 (1)
  • 收藏
  • 关注

原创 基于按键驱动的查询式LCD多级菜单框架代码设计

2.key_val,表示当前按键菜单的上下键按键值,最大不超过该菜单表项的max_key_val,超过就回到0重新开始。我这里使用的是按上键减1,按下键加1。3.rollback用来指示key_val值要不要翻转,比如加到max_key_val之后要不要回到0重新开始,或者减到0之后,要不要回到max_key_val-1。4.menu_level表示当前处在哪一级菜单中,当按选择键或者退出键时,需要把当前这级菜单的key_val记录到menu_item[]数组中,以便退出时能正确显示上一级菜单的菜单项。

2024-09-25 15:13:07 658

原创 USB2.0四大传输之控制传输

控制传输称为transfers,而不是transaction,原因是控制传输其实是包含多个transaction。一般来说控制传输分为建立阶段(Setup stage)、数据阶段(Data stage)、 状态阶段(Status stage)三个事务(transaction),但也存在没有数据阶段的情况,所以可以这么说,控制传输至少包含setup和status两个事务(transaction)。其实,这个图只是setup transaction的流程。这个图是完整控制传输的时序。

2024-04-09 20:55:34 276

原创 USB2.0四大传输之中断传输

Interrupt OUT传输示例。Interrupt IN传输实例。

2024-04-09 19:23:51 425

原创 USB2.0四大传输之同步传输

也称作等时传输,只包含令牌包(Token)、数据传输(Data)两个阶段,因为同步传输不关心数据是否正确传输,因而不需要握手。

2024-04-09 15:56:19 78

原创 USB2.0四大传输之批量传输

1、批量传输包含IN和OUT传输两种2、当device收到IN令牌包(token)之后,可以回复data数据包、NAK或者STALL;如果令牌包有错误,则device直接丢弃,不做任何回复。3、当host准备好发送数据时,先发送OUT令牌包,然后立刻跟着发送一个数据包。device收到数据包之后,可以回复ACK、NAK或者STALL,高速设备(high-speed device)还可以回复NYET。

2024-04-09 15:30:21 477

原创 openwrt procd启动流程代码分析

1、内核调用内核启动以后调用init_post函数/* This is a non __init function. Force it to be noinline otherwise gcc * makes it inline to init() and it becomes part of init.text section */static noinline int ini...

2018-12-03 16:34:57 2200

原创 调试Linux OpenWrt 2.6.36+华为ME909s-821 4G模块

1、内核menuconfig添加如下配置项Kernel modules-->USB Support    --> kmod-usb-net        --> kmod-usb-net-cdc-ether    --> kmod-usb-serial        --> kmod-usb-serial-option2、修改驱动代码d...

2018-11-26 15:50:02 6053 5

原创 线程池编程示例

示例代码:#include #include #include #include #include #include typedef struct worker{ void *(*process)(void *arg); void *arg; struct worker *next;}CThread_worker;/*线程池结构*/typ

2017-09-22 15:37:44 295

原创 基于UDP的C/S网络编程模型(使用sendto和recvfrom函数)

服务端:#include #include #include #include #include #include //#define CONFIG_TCP_CONNECT#define MAX_CLIENT_NUM 10#define LOG_ERROR(module_id, format...) \do{ \printf(format)

2017-09-11 15:13:40 649

原创 基于TCP的C/S网络编程模型

服务端代码:#include #include #include #include #include #include #define MAX_CLIENT_NUM 10#define LOG_ERROR(module_id, format...) \do{ \ printf(format); \}while(0)int main(int argc, c

2017-09-11 15:10:52 441

原创 Freescale MMPF0100电源管理芯片配置长按关机功能

Freescale MMPF0100电源管理芯片配置长按关机功能

2017-05-18 18:12:31 5462

原创 USB wifi模块mt7601U移植至imx 6q android 6.0平台

最近公司使用imx6q开发新产品,我们没有经验,选了最新的android 6.0平台来做开发。而硬件给我们提供的wifi模块竟然是使用USB外接的wifi模块,没错,就是淘宝上买的那种小型无线网卡,不是嵌入式wifi模块(不想说硬件兄弟坑我们了,没办法,小公司就是这样),当然附带的光盘里面的驱动是windows驱动,不过挺良心的还有linux驱动代码,这多少让我感到有些安慰,以为有驱动应该好办。不

2017-04-22 16:33:53 4668 2

原创 内核2.6.36版本kfifo代码修改分析

最近调试openwrt spi驱动,将原来2.6.23版本内核升级到2.6.36,发现调用kfifo相关api函数的代码无法编译通过。原来是内核升级后,kfifo代码进行了修改。以下就列举修改前和修改后的一些差别。本质上,kfifo修改的目的在于为了使用kfifo api更加通用,而不是像原来内核中kfifo,只能使用在数据元素为字符型(unsigned char)的环形缓冲应用场景。

2016-03-23 13:58:46 1723

富士通MB95200系列MCU完整串口及I/O口演示程序

富士通MCU的完整演示程序,包括softune程序应用以及富士通单片机烧录程序FUJITSU USB PROGRAMMER的详细应用,还包括MB95200系列的串口以及中断等演示程序

2011-04-22

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除