?? 例2.txt
字號(hào):
第二個(gè)是定時(shí)器四的測試程序,程序?qū)崿F(xiàn)功能是板子上的3顆LED做流水燈,至于流水快慢,我沒有去研究,只是個(gè)時(shí)鐘問題而已,關(guān)鍵是定時(shí)器能否跑起來,程序是用軟件查詢標(biāo)志位的方法來判斷定時(shí)計(jì)數(shù)器是否溢出實(shí)現(xiàn)的。
#include "STM8S105C_S.h"
#define uint unsigned int
#define uchar unsigned char
uchar table[]={0x00,0x01,0x04,0x08};
uchar i=0;
void GPIO_Init(void)
{
PD_DDR|=0x0d; //3個(gè)LED端口(PD3 PD2 PD0 )設(shè)為推挽輸出,頻率10M 方向,方式,頻率
PD_CR1|=0x0d;
PD_CR2|=0x0d;
}
void Time4_Init(void)
{
TIM4_IER=0x00; //禁止觸發(fā)中斷,禁止更新中斷
TIM4_EGR=0x01; //計(jì)數(shù)器溢出時(shí),更新事件產(chǎn)生
TIM4_PSCR=0x07; //對(duì)計(jì)數(shù)脈沖進(jìn)行128分頻
TIM4_ARR=255; //計(jì)數(shù)值,當(dāng)計(jì)數(shù)器計(jì)數(shù)到這個(gè)值就溢出
TIM4_CR1=0x01; //使能計(jì)數(shù)器
}
void Delay(uint k)
{
uint j;
for(j=k;j>0;j--);
}
main()
{
GPIO_Init();
Time4_Init();
while (1)
{
PD_ODR=table[i]; //往IO口寫數(shù)據(jù)
if(TIM4_SR & 0X81)
{
i++;
TIM4_SR=0x00;
}
if(i==4)i=0;
}
}
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -