欢迎来到天天文库
浏览记录
ID:40561323
大小:37.50 KB
页数:8页
时间:2019-08-04
《nrf401实验c51程序》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、nrf401实验c51程序/*----------------------------------------------------------------------nrf401实验程序雁塔菜农HotPower@126.com-----------------------------------------------------------------------*/#include#include#include#include#include2、1.h>#include#defineT0_8mS-8000#defineT1_8mS-8000#defineT2_1_25mS-576//-1250*0.9216=1.25MS/*---------------------------------------------------------------------- 系统函数-----------------------------------------------------------------------*/voidMainInit(void);3、//系统初始化voidClrWdt(void);//喂狗voidnRFInit(void);voidSystemInit(void);//系统初始化voidSystemSetup(void);//系统设置voidSystemIoInit(void);//系统接口初始化voidUserSetup(void);//用户运行环境设置voidTimeInit(void);unsignedcharcrc8r(unsignedcharcrcbyte);unsignedintcrc16r(unsignedintcrcword,unsignedintcrc);4、unsignedintGetTXBuffWord(unsignedcharledpos);voidSetTXBuffWord(unsignedcharledpos,unsignedintval);unsignedintGetRXBuffWord(unsignedcharledpos);voidSetRXBuffWord(unsignedcharledpos,unsignedintval);SystemDataSystemBuffers;//申请系统数据结构SioDataSioBuffers;/*-------------------------5、---------------- 主程序初始化-------------------------------------------*/voidMainInit(void)//系统初始化{ SystemIoInit();//系统接口初始化 ClrWdt();//清除看门狗计数器 if(SystemBuffers.RamTest!=0x55aa){//内存测试SystemInit();//系统上电初始化 } SystemSetup();//系统运行环境设置 UserSetup();//用户运行环境设置}voidSyst6、emInit(void)//系统初始化{ SystemBuffers.RamTest=0x55aa;//内存初始化}voidSystemSetup(void)//系统设置{ AUXR=0x01;//关闭EMI nRFInit(); TimeInit(); IP=0x10;//中断优先级EX1>ET2>ET0>EX0>ES IE=0xb4;//开中断EA,ET2,ET1,EX1,ET0}voidUserSetup(void)//用户运行环境设置{}voidSystemIoInit(void){ IE=0x00;//关闭中断 P0=7、0xff;//P0口初始化 P1=0xff;//P1口初始化 P2=0xff;//P2口初始化 P3=0xff;//P3口初始化}voidTimeInit(){ TMOD=0x21;//定时器0,1为方式1(十六位定时器) TCON=0x55;//启动定时器TR1EQUTR0EQU1,IT1EQUIT0EQU1/*---------------------------------- 定时器0定时参数设置----------------------------------*/ TL0=0; TH0=0; TR0=1;//8、启动定时器0/*---------------------------------- 定时器0定时参数设置-----------------
2、1.h>#include#defineT0_8mS-8000#defineT1_8mS-8000#defineT2_1_25mS-576//-1250*0.9216=1.25MS/*---------------------------------------------------------------------- 系统函数-----------------------------------------------------------------------*/voidMainInit(void);
3、//系统初始化voidClrWdt(void);//喂狗voidnRFInit(void);voidSystemInit(void);//系统初始化voidSystemSetup(void);//系统设置voidSystemIoInit(void);//系统接口初始化voidUserSetup(void);//用户运行环境设置voidTimeInit(void);unsignedcharcrc8r(unsignedcharcrcbyte);unsignedintcrc16r(unsignedintcrcword,unsignedintcrc);
4、unsignedintGetTXBuffWord(unsignedcharledpos);voidSetTXBuffWord(unsignedcharledpos,unsignedintval);unsignedintGetRXBuffWord(unsignedcharledpos);voidSetRXBuffWord(unsignedcharledpos,unsignedintval);SystemDataSystemBuffers;//申请系统数据结构SioDataSioBuffers;/*-------------------------
5、---------------- 主程序初始化-------------------------------------------*/voidMainInit(void)//系统初始化{ SystemIoInit();//系统接口初始化 ClrWdt();//清除看门狗计数器 if(SystemBuffers.RamTest!=0x55aa){//内存测试SystemInit();//系统上电初始化 } SystemSetup();//系统运行环境设置 UserSetup();//用户运行环境设置}voidSyst
6、emInit(void)//系统初始化{ SystemBuffers.RamTest=0x55aa;//内存初始化}voidSystemSetup(void)//系统设置{ AUXR=0x01;//关闭EMI nRFInit(); TimeInit(); IP=0x10;//中断优先级EX1>ET2>ET0>EX0>ES IE=0xb4;//开中断EA,ET2,ET1,EX1,ET0}voidUserSetup(void)//用户运行环境设置{}voidSystemIoInit(void){ IE=0x00;//关闭中断 P0=
7、0xff;//P0口初始化 P1=0xff;//P1口初始化 P2=0xff;//P2口初始化 P3=0xff;//P3口初始化}voidTimeInit(){ TMOD=0x21;//定时器0,1为方式1(十六位定时器) TCON=0x55;//启动定时器TR1EQUTR0EQU1,IT1EQUIT0EQU1/*---------------------------------- 定时器0定时参数设置----------------------------------*/ TL0=0; TH0=0; TR0=1;//
8、启动定时器0/*---------------------------------- 定时器0定时参数设置-----------------
此文档下载收益归作者所有