这是一个通用的STM32启动及控制代码集.它没有使用ST的库,完全是基于寄存器的操作.它包括三部分:
1,sys
sys部分包含了STM32的系统级别的代码,包括:时钟配置,IO口输入输出管理,中断管理,待机模式设置,BKP操作,软复位,JTAG配置等.
2,usart
usart部分包含了对串口1的初始化,用于串口调试,或者串口打印信息.
3,delay
delay部分包含了2个基本的延时函数,delay_us和delay_ms,这两个函数采用STM32的SYSTICK作为延时定时器,所以在使用delay的时候,需要占用SYSTICK.
单片机源程序如下:
- #include <stm32f10x_lib.h>
- #include "sys.h"
- #include "usart.h"
- #include "delay.h"
- #include "led.h"
- #include "key.h"
- #include "exti.h"
- #include "wdg.h"
- #include "timer.h"
- #include "lcd.h"
- //此程序的LCD驱动部分,对IO口操作进行了加速处理,使得刷屏速度提高了近一倍.
- //具体请看ILI93XX.c和lcd.h文件!
- u16 x=0;
- int main(void)
- {
- Stm32_Clock_Init(9);//系统时钟设置
- delay_init(72); //延时初始化
- uart_init(72,9600); //串口1初始化
- LED_Init();
- LCD_Init();
- Timerx_Init(10000,7199);//10Khz的计数频率,计数到5000为500ms
- while(1)
- {
- LCD_Clear(BLUE);
- x++;
- LCD_Clear(GREEN);
- x++;
- LCD_Clear(RED);
- x++;
- }
- }
复制代码
所有资料51hei提供下载:
ALIENTEK MINISTM32 扩展实验6 LCD帧统计.rar
(38.12 KB, 下载次数: 9)
|