资源简介
MSP430 四驱PID速度调节 蓝牙小车代码程序
通过PID算法,PWM控制可以任意准确调节小车速度,匀速运动,自动调节,直线行走

代码片段和文件信息
/********************************************************************/
//延时函数,IAR自带,经常使用到
#define CPU_F ((double)8000000) //外部高频晶振8MHZ
//#define CPU_F ((double)32768) //外部低频晶振32.768KHZ
#define delay_us(x) __delay_cycles((long)(CPU_F*(double)x/1000000.0))
#define delay_ms(x) __delay_cycles((long)(CPU_F*(double)x/1000.0))
//串口波特率计算,当BRCLK=CPU_F时用下面的公式可以计算,否则要根据设置加入分频系数
#define baud 9600 //设置波特率的大小
#define baud_setting (uint)((ulong)CPU_F/((ulong)baud)) //波特率计算公式
#define baud_h (uchar)(baud_setting>>8) //提取高位
#define baud_l (uchar)(baud_setting) //低位
//自定义数据结构,方便使用
#define uchar unsigned char
#define uint unsigned int
#define ulong unsigned long
unsigned int A1A2A3A4TEMP;
unsigned char Flag=0; //标志变量
void Data_do(uint temp_d)
{
uint temp_1temp_2;
A1=temp_d/1000; //分出千,百,十,和个位
temp_1=temp_d%1000;
A2=temp_1/100;
temp_2=temp_1%100;
A3=temp_2/10;
A4=temp_2%10;
}
void ADC_Init()
{
P6SEL|=0x01; //选择ADC通道
ADC12CTL0|= ADC12ON + SHT0_2 + REF2_5V + REFON; //ADC电源控制开,16个CLK,内部基8准2.5V
ADC12CTL1|= ADC12SSEL1 + ADC12SSEL0; //SMCLK做时钟源
ADC12MCTL0= SREF0 + INCH_0; //参考控制位及通道选择,这里选择通道0
ADC12IE|= 0x01; //中断允许
ADC12CTL0|= ENC; //使能转换器
}
#pragma vector=ADC_VECTOR
__interrupt void ADC12ISR(void)
{
while((ADC12CTL1&0x01)==1); //如果ADC忙,则等待,否则读取ADC转换数值
Flag = 1; //标志置1
TEMP = ADC12MEM0; //读取ADC转换值
Data_do(TEMP); //处理ADC值,用于显示
/*LCD_write_char(11A1+0x30);
LCD_write_char(21A2+0x30);
LCD_write_char(31A3+0x30);
LCD_write_char(41A4+0x30); */ //显示ADC的数据
}
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 202 2019-08-04 09:14 pid蓝牙小车\01.eww
文件 2111 2019-09-04 14:43 pid蓝牙小车\car.c
文件 17913 2019-08-04 11:02 pid蓝牙小车\Debug\Exe\比赛设计小车.d43
文件 17658 2019-09-16 21:35 pid蓝牙小车\Debug\Exe\比赛设计小车.txt
文件 112310 2019-09-16 21:35 pid蓝牙小车\Debug\Obj\main.r43
文件 157 2019-09-16 21:38 pid蓝牙小车\Debug\Obj\比赛设计小车.pbd
文件 13139 2019-07-12 11:51 pid蓝牙小车\gpio.h
文件 6736 2019-09-16 21:35 pid蓝牙小车\main.c
文件 6978 2019-08-05 08:17 pid蓝牙小车\oled.c
文件 1713 2019-08-05 08:17 pid蓝牙小车\oled.h
文件 13822 2019-09-04 14:21 pid蓝牙小车\oledfont.h
文件 5041 2019-08-13 22:11 pid蓝牙小车\PID.h
文件 3644 2019-09-16 21:38 pid蓝牙小车\settings\01.wsdt
文件 861 2019-09-16 21:15 pid蓝牙小车\settings\比赛设计小车.cspy.bat
文件 63 2019-09-16 21:38 pid蓝牙小车\settings\比赛设计小车.dbgdt
文件 486 2019-09-16 21:38 pid蓝牙小车\settings\比赛设计小车.dni
文件 2862 2019-09-16 21:38 pid蓝牙小车\比赛设计小车.dep
文件 50290 2019-08-04 11:19 pid蓝牙小车\比赛设计小车.ewp
目录 0 2020-07-04 13:25 pid蓝牙小车\Debug\Exe
目录 0 2019-08-04 09:14 pid蓝牙小车\Debug\List
目录 0 2020-07-04 13:25 pid蓝牙小车\Debug\Obj
目录 0 2020-07-04 13:25 pid蓝牙小车\Debug
目录 0 2020-07-04 13:26 pid蓝牙小车\settings
目录 0 2020-07-04 13:26 pid蓝牙小车
----------- --------- ---------- ----- ----
255986 24
相关资源
- STC8951系列单片机中方指南
- 基于MCS_51单片机的工业屏柜散热方案
- MCS_51单片机与8255A的接口设计
- 飞思卡尔单片机MC9S12XS12G128驱动(硬件
- 51单片机PWM程序,占空比、周期可调整
- 单片机和adc0809数字电压表
- PIC单片机完成的电子密码锁
- 单片机、ADC0808809设计简易数字电压表
- 51单片机多功能自行车测速仪
- 单片机做的6位时分秒数字钟
- 单片机电子时钟 闹钟 日历
- 音乐代码转换软件 单片机编程时用
- 单片机课程设计 篮球计分器
- 00
- 用51单片机实现G代码翻译
- 简易的电阻电容测量电路
- 单片机与温度传感器DS18B20的程序设计
- 51单片机基于protues的几个仿真实例
- 基于52单片机的直流电压测量
- 38k单片机红外发送代码、keil
- 51单片机PCB设计图
- PC -- 单片机的串口数据传输系统设计
- 51单片机控制舵机程序
- 武汉理工大学 单片机课程设计 16*16点
- 51单片机读取温度数据存储到SD卡中并
- 【单片机】51单片机数码管显示万年历
- 浙江工业大学2005-2006学年单片机习题
- 单片机与PC机串口通讯仿真
- 毕业设计 单片机 对讲机 protues仿真
- 数据采集系统——ADC0808的应用,单片
评论
共有 条评论