欢迎来到天天文库
浏览记录
ID:38692837
大小:134.00 KB
页数:19页
时间:2019-06-17
《体育竞走项目智能辅助裁判系统》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、//右脚程序#include#defineuintunsignedint#defineucharunsignedcharsbitP0_0=P0^0;sbitsdi=P1^0;sbitsck=P1^1;sbitnsel=P1^2;sbitsdo=P1^3;inttxdata[16];//16,发送数据缓冲存储器组//-------------------------------------------------------------------//函数定义//-------------------------------
2、------------------------------------voidIA4421_init(void);voidtxframe(void);voidspi_sendcommand(uintx);voidspi_sendbyte(ucharx);//-------------------------------------------------------------------//主程序//-------------------------------------------------------------------vo
3、idmain(){IA4421_init();//ia4421初始化txdata[0]=0x55;//把要发送的数据写到发送数据缓冲器组txdata[1]=0x55;spi_sendcommand(0x8288);//电源管理while(1){if(P0_0==0)continue;//如果p0.0=0(右脚着地)不做任何动作elsetxframe();//否则发送数据}}voidspi_sendbyte(ucharx){uchari,bytedata;bytedata=x;for(i=0;i<8;i++){sck=0;//数据需要在SCK
4、上升沿移入器件内部,故先把SCK//置低sdi=bytedata&0x80;//将数据一位位移入sdibytedata=bytedata<<1;sck=1;}sck=0;sdi=0;}voidspi_sendcommand(uintx){ucharcomdata1,comdata2;uinta;//a为16位的数据,即写入的指令a=x;nsel=0;//nsel=0,选中器件,开始把sdi引脚的数comdata2=a;//把a的低8位写入comdata2comdata1=a>>8;//把a的高8位写入comdata1spi_sendbyte
5、(comdata1);spi_sendbyte(comdata2);nsel=1;}voidtxframe(void)//;ia442x发送一帧数据{uchari;uintu;spi_sendcommand(0x8228);//0x8228表示打开发射机,打开晶体振荡器,准//备发送数据for(i=0;i<2;i++){nsel=0;while(!sdo);//sdo为高电平则发射寄存器准备从微控制芯片读//出一个字节u=0xb8;//发射寄存器写命令的高8位,固定,作为引导数据u<<=8;//把数据左移8位到高8位u+=txdata[i]
6、;//从发送缓冲区读出数据spi_sendcommand(u);//发送数据}nsel=0;while(!sdo);spi_sendcommand(0xb8aa);//发射寄存器写命令,用于将数据字节写入发射机//以待发射}voidIA4421_init(void){spi_sendcommand(0x80dd);//配置命令,fd-915M,dd-433Mspi_sendcommand(0x820c);//电源管理spi_sendcommand(0xa080);//频率设置spi_sendcommand(0xc623);//波特率设置sp
7、i_sendcommand(0x9483);//接收控制spi_sendcommand(0xc2ec);//数据滤波spi_sendcommand(0xca81);//FIFOCOMMANDspi_sendcommand(0xc4e7);//AFCCOMMANDspi_sendcommand(0x9840);//TXCTRLspi_sendcommand(0xffff);//WAKEUPspi_sendcommand(0xc80e);//间歇工作spi_sendcommand(0xc060);//时钟输出}//左脚程序#include8、g52.h>#defineuintunsignedint#defineucharunsignedcharsbitp0_0=P0^0;sbitsdi=P1^0;sbitsck=P1
8、g52.h>#defineuintunsignedint#defineucharunsignedcharsbitp0_0=P0^0;sbitsdi=P1^0;sbitsck=P1
此文档下载收益归作者所有