TA的每日心情 | 奋斗 13 小时前 |
---|
签到天数: 1970 天 连续签到: 26 天 [LV.Master]伴坛终老
|
本次研究一下板子的ADC采样功能。在导入的外设驱动例子中,选择ADC_Demo。点击IDE的小锤子选择并编译。例子可配置选择采样GPIO电压,VBAT电压,以及MCU温度。
MCU的adc功能说明:
adc的GPIO引脚有一下几个:
- /**
- * @brief adc input pin type
- * | | |
- * | :-------- | :----------- |
- * | <15:12> | <11:0> |
- * |adc channel| gpio pin |
- */
- typedef enum{
- ADC_GPIO_PB0 = GPIO_PB0 | (0x1<<12),
- ADC_GPIO_PB1 = GPIO_PB1 | (0x2<<12),
- ADC_GPIO_PB2 = GPIO_PB2 | (0x3<<12),
- ADC_GPIO_PB3 = GPIO_PB3 | (0x4<<12),
- ADC_GPIO_PB4 = GPIO_PB4 | (0x5<<12),
- ADC_GPIO_PB5 = GPIO_PB5 | (0x6<<12),
- ADC_GPIO_PB6 = GPIO_PB6 | (0x7<<12),
- ADC_GPIO_PB7 = GPIO_PB7 | (0x8<<12),
- ADC_GPIO_PD0 = GPIO_PD0 | (0x9<<12),
- ADC_GPIO_PD1 = GPIO_PD1 | (0xa<<12),
- }adc_input_pin_def_e;
复制代码
下面我根据上次串口demo,实现printf打印信息输出。
- ////////////////////////////////////////////
- #define UART0_TX_PIN UART0_TX_PB2
- #define UART0_RX_PIN UART0_RX_PB3
- void debug_uart_init(void)
- {
- unsigned short div=0;
- unsigned char bwpc=0;
- uart_reset(UART0);
- uart_set_pin(UART0_TX_PIN,UART0_RX_PIN);
- uart_cal_div_and_bwpc(115200, sys_clk.pclk*1000*1000, &div, &bwpc);
- uart_init(UART0, div, bwpc, UART_PARITY_NONE, UART_STOP_BIT_ONE);
- }
- __attribute__((used)) int _write(int fd, const unsigned char *buf, int size)
- {
- (void) fd;
- int i;
- for (i = 0; i < size; i++){
- uart_send_byte(UART0, buf[i]);
- }
- return i;
- }
复制代码 这里要注意在common文件夹有个print.c已经实现了pintf,不过是IO模拟串口的。如下地方:
添加打印数据:
重新编译下载。
串口数据
还可以通过BDT下载软件查看变量。
|
|