基于F340 实现Bridge功能(一):下位机Firmware编写

下位机固件开发,使用Keil C, 上位机开发使用VC++ 6

一、 固件工程必须包含下列4项文件:


其中:  1. C8051F340_defs为F340 定义头文件

             2. compiler_defs为用户向量定义头文件

             3. USB_API为Silicon USBXPress开发包定义的头文件,里面有作为USB通信接口函数的函数声明等

             4. USBX_F34X为Silicon USBXPress开发包的.lib文件(这个文件最重要),先将其拷入本工程的文件夹,再用如下方式添加入工程

基于F340 实现Bridge功能(一):下位机Firmware编写_第1张图片

基于F340 实现Bridge功能(一):下位机Firmware编写_第2张图片

前3项在主函数.c文件中用include加入:


二、 在主函数.c文件中定义输入、输出buffer,初始化USB:

定义输入、输出buffer

基于F340 实现Bridge功能(一):下位机Firmware编写_第3张图片

初始化USB:

基于F340 实现Bridge功能(一):下位机Firmware编写_第4张图片

三、 添加USB中断函数,使用上面加入的.lib中的read和write函数实现USB通信

基于F340 实现Bridge功能(一):下位机Firmware编写_第5张图片

其中Block_Read(Out_Packet, ...);

       Block_Write(In_Packet, ...);

           是USB通信的读和写函数,第一个参数是前面定义的USB buffer,第二个参数为写入buffer的字节数,buffer定义了多少个字节,第二个参数就写多少。这两个函数可以放在任何中断的中断函数中,实现USB通信与其它中断的合作。如在I2C中断中调用这两个函数,可以实时实现I2C通信后将数据传回PC或将PC数据及时传给I2C。


四、 I2C 程序用Silicon F340 SMBUS示例程序即可



你可能感兴趣的:(c,api,buffer,include,compiler)