




已阅读5页,还剩9页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
/* * yaokongqi.c * * Created: 2015/9/8 19:55:29 * Author: LOVE */ /*/* 常用头文件及宏定义 */*/#include #include /延时文件#include /睡眠文件#include /中断文件#include /eeprom#define BIT(x)(1(x)#define ucharunsigned char#define uintunsigned int/*/* NRF24L01 */*/PA0 CEPA1 CSN PA2 SCK PA3 MOSI PA4 MISO PA5 IQR#define DDR_NRF2401DDRB#define PORT_NRF2401PORTB#define PIN_NRF2401PINB#define CE_HPORT_NRF2401|=BIT(0)#define CE_LPORT_NRF2401&=BIT(0)#define CSN_HPORT_NRF2401|=BIT(1)#define CSN_LPORT_NRF2401&=BIT(1)#define SCKPORT_NRF2401|=BIT(2),PORT_NRF2401&=BIT(2)#define MOSI_HPORT_NRF2401|=BIT(3)#define MOSI_LPORT_NRF2401&=BIT(3)#define MISO_PIN(PIN_NRF2401&BIT(4)#define IQR_PIN(PIN_NRF2401&BIT(5)char a3=0;uchar b4=0;char read_peizhi(char dizhi)CSN_L;char i;for (i=0;i8;i+)if (dizhi&BIT(7-i)MOSI_H;elseMOSI_L;SCK;dizhi=0;for (i=0;i8;i+)_delay_us(10);if (MISO_PIN)dizhi+=BIT(7-i);SCK;CSN_H;return dizhi;void write_peizhi(char dizhi,char shuju)char i;CSN_L;dizhi+=BIT(5);for (i=0;i8;i+)if (dizhi&BIT(7-i)MOSI_H; elseMOSI_L;SCK;for (i=0;i8;i+)if (shuju&BIT(7-i)MOSI_H;elseMOSI_L;SCK;CSN_H;void read_shuju(uchar n)uchar i,j;CSN_L;for (i=0;i8;i+)if (0x61&BIT(7-i)MOSI_H;elseMOSI_L;SCK;for (j=0;jn;j+)aj=0;for (i=0;i8;i+)_delay_us(10);if (MISO_PIN)aj+=BIT(7-i);SCK;CSN_H;void write_shuju(uchar n)uchar i,j;CSN_L;for (i=0;i8;i+)if (0xa0&BIT(7-i)MOSI_H; elseMOSI_L;SCK;for (j=0;jn;j+)for (i=0;i8;i+)if (bj&BIT(7-i)MOSI_H;elseMOSI_L;SCK;CSN_H;void qingchu_tx()char i;CSN_L;for (i=0;i8;i+)if (0xe1&BIT(7-i)MOSI_H; elseMOSI_L;SCK;CSN_H;void qingchu_rx()char i;CSN_L;for (i=0;i8;i+)if (0xe2&BIT(7-i)MOSI_H;elseMOSI_L;SCK;CSN_H;char read_zhuangtai()CSN_L;char i,zhuangtai=0;MOSI_H;for (i=0;i8;i+)SCK;_delay_us(40);if (MISO_PIN)zhuangtai+=BIT(7-i);CSN_H;return zhuangtai;void read_dizhi(char dizhi,char *shuju,char zijie)CSN_L;char i,j;for (i=0;i8;i+)if (dizhi&BIT(7-i)MOSI_H;elseMOSI_L;SCK;shuju+=zijie;for (j=0;jzijie;j+)shuju-; *shuju=0;for (i=0;i8;i+)_delay_us(10);if (MISO_PIN)*shuju+=BIT(7-i);SCK;CSN_H;void write_dizhi(char dizhi,char *shuju,char zijie)char i,j;CSN_L;dizhi+=BIT(5);for (i=0;i8;i+)if (dizhi&BIT(7-i)MOSI_H;elseMOSI_L;SCK;shuju+=zijie;for (j=0;jzijie;j+)shuju-;for (i=0;i8;i+)if (*shuju&BIT(7-i)MOSI_H;elseMOSI_L;SCK;CSN_H;void chushihua_nrf2401()DDR_NRF2401|=BIT(0)|BIT(1)|BIT(2)|BIT(3);DDR_NRF2401&=(BIT(4)|BIT(5);PORT_NRF2401|=BIT(4)|BIT(5);CSN_H;CE_L;char dizhi5=l,o,v,e,0x01;write_peizhi(0x00,0x0a);write_peizhi(0x02,0x01);write_peizhi(0x04,0x00);write_dizhi(0x0a,dizhi,5);/接收地址love01write_dizhi(0x10,dizhi,5);/发送地址love01write_peizhi(0x11,0x03);/接收数据宽 3/*/* 按键 */*/#define DDR_ANJIANDDRD#define PORT_ANJIANPORTD#define PIN_ANJIANPINDuchar sudu=1,zhuangxiang=1;char en=1;void chushihua_anjian()DDR_ANJIAN=0;PORT_ANJIAN=0xff;void jianma()if (PIN_ANJIAN!=0xff)_delay_ms(10);if (PIN_ANJIAN!=0xff)switch(PIN_ANJIAN)case 0xfe:/1 速度+if (sudu!=4)sudu+;while(PIN_ANJIAN!=0xff);break;case 0xfd:/2 速度-if (sudu!=1)sudu-;while(PIN_ANJIAN!=0xff);break;case 0xfb:/3 转向+while(PIN_ANJIAN!=0xff);break;case 0xf7:/4 转向-while(PIN_ANJIAN!=0xff);break;case 0xef:/5 蜂鸣器b2|=BIT(4);break;case 0xdf:/6 刹车b3&=b2|0xf3;b2|=BIT(2)|BIT(3);break;case 0xcf:/5+6组合键 蜂鸣器+刹车b3&=b2|0xf3;b2|=BIT(2)|BIT(3)|BIT(4);break;default:;/*/* ADC */*/int dianya3=0;uchar tongdao=0,dianchi=100;void chushihua_adc()DDRA&=(BIT(1)|BIT(2)|BIT(3);ADMUX=0x43;ADCSRA|=BIT(ADEN)|BIT(ADSC)|BIT(ADIE)|BIT(ADPS2)|BIT(ADPS1)|BIT(ADPS0);while(!(ADCSRA&BIT(ADIF);/等待转换结束dianya2=ADCL+(ADCH511)b0=(dianya0-511)/20+98; elseb0=98-(511-dianya0)/20;if (dianya1511)b1=(dianya1-511)/3;if (b12)b2&=BIT(5);elseif (en)b2|=BIT(5);elseb2&=BIT(5);b2|=BIT(3);b2&=BIT(2);elseswitch(sudu)case 1:b1=(511-dianya1)/4;if (b13)b2&=BIT(5);elseif (en)b2|=BIT(5);elseb2&=BIT(5);break;case 2:b1=(511-dianya1)/3;if (b13)b2&=BIT(5);elseif (en)b2|=BIT(5);elseb2&=BIT(5);break;case 3:b1=(511-dianya1)/8+160;if (b1163)b2&=BIT(5);elseif (en)b2|=BIT(5);elseb2&=BIT(5);break;case 4:b1=(511-dianya1)/10+200;if (b10)i=(dianya2-700)*100/(1023-700)+5;elsei=0;if (idianchi)dianchi=i; jianma();if (!IQR_PIN)zhuangtai=read_peizhi(0x07);if (zhuangtai&BIT(5)write_peizhi(0x07,BIT(5);qingchu_tx();if (zhuangtai&BIT(4)write_peizhi(0x07,BIT(4);qingchu_tx();if (zhuangtai&BIT(6)write_peizhi(0x07,BIT(6);elsewrite_shuju(3);CE_H;_delay_us(10);CE_L;b2&=BIT(4);b2&=b3;b3=0xff;ntongdao=0;numtongdao=0;switch(tongdao)case 0:ADMUX=0x42;tongdao=
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025国企 面试题库及答案
- 安全工程师建筑施工现场的安全文化传播试题及答案
- 绿色环保2025年纸包装产品行业环保材料研发与创新研究报告
- 注册土木工程师考试的课程安排与复习科目试题及答案
- 舞蹈基本知识试题及答案
- 家具行业的市场细分策略与消费者心理分析研究试题及答案
- 电商种草经济崛起下的内容营销策略创新报告
- 小吃口味测试题及答案
- 金融行业大数据应用中的数据治理与隐私保护挑战分析
- 冀中职业学院《中国侠客文化》2023-2024学年第一学期期末试卷
- 装配钳工(中级)试题库
- 养老护理员职业技能等级认定三级(高级工)理论知识考核试卷
- 餐饮业消防安全管理制度
- 研发费用加计扣除政策执行指引(1.0版)
- GB/T 20647.9-2006社区服务指南第9部分:物业服务
- 海洋油气开发生产简介课件
- 重庆十八梯介绍(改)课件
- 一级病原微生物实验室危害评估报告
- 设备机房出入登记表
- 起重吊装作业审批表
- 最新三角形的特性优质课教学设计公开课教案
评论
0/150
提交评论