资源简介
STM32 两轮平衡车 程序 获取姿态传感器的角度 控制电机的速度

代码片段和文件信息
#include
#include “..\Include\M051.h“
#include “..\Include\Register_Bit.h“
#include “..\Include\Common.h“
#include “..\Include\Macro_SystemClock.h“
#include “..\Include\Macro_Timer.h“
#include “..\Include\retarget.h“
#include “..\Include\Macro_ADC.h“
#define ADC_CLOCK_DIVIDER 0x00040000
#define ADC_CLK_Source 0x00000000
void AD0_Init(void)
{
P1_PMD=0x0000;
set_ADC_RST;
clr_ADC_RST;
/* ADC engine clock enable */
set_ADEN_CLK;
if (ADC_CLK_Source==0x00000000 )
{
ADCClkSource_ex12MHZ;
}
else if(ADC_CLK_Source==0x00000004 )
{
ADCClkSource_PLL;
}
else if(ADC_CLK_Source==0x00000008 )
{
ADCClkSource_int22MHZ;
}
/* Set ADC divisor */
CLKDIV=ADC_CLOCK_DIVIDER;
/* ADC enable */
set_ADEN;
set_CALEN; //Self Calibration Enable
while(!(ADCALR&CALDONE));
// setAD_SIG;
setAD_CONSCAN;
/* Single end input */
clr_DIFFEN;
/* Set the ADC channel */
set_CHEN0;
set_CHEN1;
set_CHEN2;
set_CHEN3;
set_CHEN4;
set_CHEN5;
set_CHEN6;
set_CHEN7;
/* Configure P1.0 as analog input pin */
set_ADC0_channel;
set_ADC1_channel;
set_ADC2_channel;
set_ADC3_channel;
set_ADC4_channel;
set_ADC5_channel;
set_ADC6_channel;
set_ADC7_channel;
/* Disable P1.0 digital input path */
P1_OFFD |= OFFD0;
P1_OFFD |= OFFD1;
P1_OFFD |= OFFD2;
P1_OFFD |= OFFD3;
P1_OFFD |= OFFD4;
P1_OFFD |= OFFD5;
P1_OFFD |= OFFD6;
P1_OFFD |= OFFD7;
/* Configure P1.0 as input mode */
P10_InputOnly;
P11_InputOnly;
P12_InputOnly;
P13_InputOnly;
P14_InputOnly;
P15_InputOnly;
P16_InputOnly;
P17_InputOnly;
/* Clear the A/D interrupt flags for safe */
set_ADF;
}
unsigned int Read_AD0(void)
{
// StartADC;
set_ADST;
while(ADSR&ADF==0);
set_ADF;
return((ADDR0&0xFFF)>>2) ;
}
unsigned int Read_AD1(void)
{
// StartADC;
set_ADST;
while(ADSR&ADF==0);
set_ADF;
return((ADDR1&0xFFF)>>2) ;
}
unsigned int Read_AD2(void)
{
// StartADC;
set_ADST;
while(ADSR&ADF==0);
set_ADF;
return((ADDR2&0xFFF)>>2) ;
}
unsigned int Read_AD3(void)
{
// StartADC;
set_ADST;
while(ADSR&ADF==0);
set_ADF;
return((ADDR3&0xFFF)>>2) ;
}
unsigned int Read_AD4(void)
{
// StartADC;
set_ADST;
while(ADSR&ADF==0);
set_ADF;
return((ADDR4&0xFFF)>>2) ;
}
unsigned int Read_AD5(void)
{
// StartADC;
set_ADST;
while(ADSR&ADF==0);
set_ADF;
return((ADDR5&0xFFF)>>2) ;
}
unsigned int Read_AD6(void)
{
// StartADC;
set_ADST;
while(ADSR&ADF==0);
set_ADF;
return((ADDR6&0xFFF)>>2) ;
}
unsigned int Read_7361_Z(void)
{
// StartADC;
set_ADST;
while(ADSR&ADF==0);
set_ADF;
return((ADDR7&0xFFF)>>2) ;
}
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 3244 2012-01-01 11:20 sin\Common\COMMON.C
文件 5211 2011-12-11 09:47 sin\Common\RETARGET.C
文件 7697 2010-08-23 10:11 sin\Common\startup_M051.S
文件 6265 2010-08-23 10:26 sin\Common\temp_UART.C
文件 6398 2012-06-04 17:16 sin\Common\UART.C
....... 149585 2012-06-05 20:53 sin\GPIO.uvopt
文件 15505 2012-05-10 15:37 sin\GPIO.uvproj
文件 151414 2012-02-21 14:43 sin\GPIO_1.uvopt
文件 3913 2012-06-05 20:44 sin\GPIO_GPIO.DEP
....... 149587 2012-06-05 20:44 sin\GPIO_uvopt.BAK
文件 15504 2012-05-08 09:50 sin\GPIO_uvproj.BAK
文件 756 2011-06-29 21:24 sin\Include\COMMON.H
文件 857 2002-10-11 13:53 sin\Include\INTRINS.H
文件 707 2010-05-31 16:18 sin\Include\L_Function.H
文件 1131 2011-04-10 10:44 sin\Include\L_SPI.H
文件 23250 2011-04-09 23:41 sin\Include\M051.H
文件 9531 2010-08-06 18:56 sin\Include\Macro_ADC.H
文件 2299 2010-08-04 10:25 sin\Include\Macro_SPI.H
文件 4500 2010-08-06 18:52 sin\Include\Macro_SystemClock.H
文件 1279 2010-08-02 17:39 sin\Include\Macro_Timer.H
文件 38313 2010-08-11 14:28 sin\Include\Register_Bit.H
文件 618 2010-04-19 15:17 sin\Include\RETARGET.H
文件 632 2011-03-16 22:25 sin\Include\UART.H
文件 94366 2012-06-05 20:44 sin\Listing\GPIO.MAP
文件 23557 2012-06-05 20:44 sin\Listing\startup_M051.LST
文件 948 2012-05-10 15:35 sin\Nu_li
文件 49830 2012-06-05 20:44 sin\Output\ad.crf
文件 414 2012-06-05 20:44 sin\Output\ad.d
文件 63292 2012-06-05 20:44 sin\Output\ad.o
文件 8984 2012-05-06 09:28 sin\Output\calculate.crf
............此处省略62个文件信息
相关资源
- STM32F103RC+ADC+DMA多通道采样LCD显示
- I2C读写AT24C02 基于STM32F103 cube116540
- 基于stm32f103ve的程序——跑马灯实验
- 基于STM32RCT6的步进电机驱动程序
- stm32f407上的两个can发送和接收例程
- STM32 led 时钟
- STM32 2.4G通信例程
- 直流无刷电机方波驱动 stm32 例程代码
- STM32中文资料
- STM32蓝牙和串口程序
- STM32f103超声波模块例程
- stm32f103c8t6 4 oled.rar
- stm32f030 IAP Demo(原创)
- STM32基于rt_thread操作系统的SDHC卡文件
- NRF24L01实现51与STM32双向通讯
- STM32F103 串口程序(完整版)
- stm32 ds18b20 温度传感器 测试通过
- stm32官方例程
- STM32F103定时器中断程序
- [免费]基于stm32f103ze 的OLED驱动代码
- STM32F103RBT6驱动UC1698控制芯片的160160黑
- STM32F103 DS18B20 V3.5.0固件库驱动程序工
- STM32定时器使用入门。看了这个程序会
- SIM908 SDIO FSMC STM32 FIFO
- STM32F103 CC2500完整驱动(模拟SPI)
- AD7606采集程序
- stm32 用SPI 方式读写 SDHC
- stm32通过DMA方式采集ADC数据
- 意法半导体STM全系列微控制器STM32ST
- 基于STM32芯片的SX1278 驱动 LORA.rar
评论
共有 条评论