AVR单片机改造遥控车

发布者:WhisperingWish最新更新时间:2019-11-16 来源: 51hei关键字:AVR单片机  遥控车  高频发射 手机看文章 扫描二维码
随时随地手机看文章

利用玩具遥控车的高频发射电路和高频接收电路,结合单片机

进行数据传输,模拟两通道比例控制遥控器。


发射端用ATTINY24从TX的8号脚控制玩具遥控器的高频发射部分

接收端用ATTINY24从RX2的3号脚接收信号。然后PWM控制

遥控车的两个电机,一个由电位器反馈。另一个由测速

盘反馈。

数据结构

0 高电平100us,低电平300us

1 高电平200us,低电平200us


数据帧结构

16位为一个包起始2位(10),地址2位,数据10位,结束2位(01)

每5个包为一个循环

1号包 全0包,不含起始结束,用于接收端复位。

2,3号包 地址01号数据。

4,5号包 地址02号数据。


纠错采用重复校验,当收到两组数据相同时确认数据有效


发送侧任务 读A通道模拟量,读B通道模拟量,数据格式转换,

信道格式转换,发送缓存更新,定时器中断发送。


接收侧任务 读电位器模拟量,测量速度值,方向位置伺服控制

速度控制。接收缓存检测,校验数据。软件看门狗


  • DSCN0739.JPG

  • DSCN0740.JPG

  • DSCN0741.JPG

  • DSCN0742.JPG

  • DSCN0743.JPG

  • DSCN0744.JPG


关键字:AVR单片机  遥控车  高频发射 引用地址:AVR单片机改造遥控车

上一篇:基于m128的LCD1602驱动(8线/4线)
下一篇:M16的T1 16位定时器一共有15种工作模式,其他2个8位定时器

推荐阅读最新更新时间:2024-11-13 21:51

AVR单片机判断脉冲宽度的方法
定时/计数器(Timer/counter)是单片机芯片中最基本的外围接口,它的用途非常广泛,常用于测量时间、速度、频率、脉宽、提供定时脉冲信号等。相对于一般8位单片机而言,AVR不仅配备了更多的定时/计数器接口,而且还是增强型的,功能非常强大。ATmega128一共配置了2个8位和2个16位,共4个定时/计数器,本小节重点对它的一些增强功能的应用做基本的介绍。 5.9.1 预分频器 定时/计数器最基本的功能就是对脉冲信号计数,当计数器计满后(8位为255,16位为65535),再来一个脉冲它就翻转到0,并产生中断信号。同其他单片机类似,AVR的定时/计数器的计数脉冲可以来自外部的引脚,也可以由从内部系统时钟获得;但AVR的定时/
[单片机]
AVR单片机系列之-Atmega8A编程入门
前言: 最近由于开始设计无刷直流电机电子调速器,参考网上的一些资料,选用了Atmega8A-AU单片机作为主控芯片。 该芯片采用8位结构,最高主频16MHz(内部振荡器则8MHz),可实现2.7V-5.5V供电,单个IO口最大可支持40mA的拉/灌电流,更难能可贵的是,价格十分便宜,我在淘宝上面购买才3块多一片。 之前从未使用过AVR系列的单片机,于是一开始编程也遇到了一些障碍,直至最终编写好第一个程序,整个过程在此记录下来,供以后参考。 一、下载器 首先我在百度上和阿莫论坛里面查询了一下AVR单片机的下载器,然后又在淘宝上面搜索对应的型号,发现目前国内主流的是ISP串口下载器,也就是和51单片机的下载器原理一样。于是乎在淘宝上面
[单片机]
<font color='red'>AVR单片机</font>系列之-Atmega8A编程入门
串行1602的四位数据线程序-avr单片机
1602的四位数据线程序,节省了IO。单片机用的是Atmega16,编译环境ICC6.31A,1602驱动头文件。 1602Driver.h /*********************LCD模块1602底层驱动库*********************** * LCD模块与单片机的硬件连接: * /端口名称 /端口符号 /MCU端口 / LCD引脚号/ * * RS数据/指令选择线 * RS PD3 4 * R/W读写选择线 * R/W GND 5 * EN写使能线 * EN PD2 6 * 三态双向数据总线 * D0-D3 N
[单片机]
AVR单片机对数码管数据P0口与P2口的控制设计
//数码管数据P0口,数码管控制P2口 #include #include #include #include #include #define code PROGMEM #define uchar unsigned char #define uint unsigned int code const ucharLED_7[16] = {0x28, 0x7E, 0xA2, 0x62, 0x74, 0x61, 0x21, 0x7A, 0x20, 0x60,0xff};//common of + code const uchar posi ti on[8] = {0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0x
[单片机]
<font color='red'>AVR单片机</font>对数码管数据P0口与P2口的控制设计
关于AVR单片机I/O口使用注意事项
1. 先正确设置DDRx方向寄存器,再进行I/O口的读写操作。 2. I/O口复位后的初始状态全部为输入工作方式,内部上拉电阻无效,外部引脚呈现三态高阻输入状态。 3. 当I/O口工作在输入方式时,且要读取外部引脚上的电平时,应读取PINxn的值,而不是PORTxn的值。 4. 当I/O工作在输入方式时,要根据实际情况使用或不使用内部的上拉电阻。 5. 一旦将I/O口的工作方式由输出设置成输入方式后,必须等待1个时钟周期后才能正确读到外部引脚PINxn的值。
[单片机]
AVR单片机定时计数器学习笔记分享
  定时计数器的结构与应用定时计数器(Timer/Counter)常用于计数、延时、测量 周期、频率、脉宽、提供定时脉冲信号等。在实际应用中,对于转速,位移、速度、流量等物理量的 测量,通常也是由传感器转换成脉冲电信号,通过使用定时计 数器来测量其周期或频率,再经过计算处理获得。   AVR的定时计数器接口功能: 通过定时计数器与比较匹配寄存器相互配合,生成占空比 可变的方波信号,即脉冲宽度调制输出PWM信号,可用于 D/A、马达无级调速控制、变频控制等。本文主要介绍的是AVR单片机定时/计数器学习笔记,具体的跟随小编来了解下。      AVR单片机定时/计数器学习笔记   定时/计数器1(16位)有普通模式、CTC模式、
[单片机]
<font color='red'>AVR单片机</font>定时计数器学习笔记分享
AVR单片机片内AD数字模拟转换器程序
/*AVR片内的AD转换器程序,本测试程序是把内部的AD转换器设置为连续转换模式,更多模式相见手册的191-207页*/ #include iom16v.h #define uchar unsigned char #define uint unsigned int #define set_bit(a,b) a|=(1 b) #define clr_bit(a,b) a&=~(1 b) #define get_bit(a,b) a&(1 b) uchar ADC_8bit()//AD转换函数 { ADMUX=0xe0;//*REFS1:0=11H表示参考电压由内部2。56V供电AREF引脚加电容? // ADL
[单片机]
avr单片机驱动max7219的程序
#include iom16v.h #include macros.h #define uchar unsigned char #define uint unsigned int //定义输出io口 #define Y1_OUT DDRC|=BIT(5); #define Y1_H PORTC|=BIT(5); #define Y1_L PORTC&=~BIT(5); #define Y2_OUT DDRD|=BIT(6); #define Y2_H PORTD|=BIT(6); #define Y2_L PORTD&=~BIT(6); #define Y3_OUT DDRD|=BIT(7); #define Y3_H
[单片机]
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved