然后,软件部分,将这个IO口配置为输入模式,带中断功能,再悉虚然后编写中断事件即可,比如让一个LED灯亮,或者串口输出。
有问题可以用ST-LINK连接看看,Debug可以单步运行查看进度的,比51的年代强太多了
/* MAIN.C file* Function:实现按键S1控制LED和蜂鸣器
* Copyright (c) 2002-2005 STMicroelectronics
*/
#include "stm8s105c4.h"
_Bool LED1 @PA_ODR:6 //定义PA.6输出寄存器为LED1
_Bool Beep @PD_ODR:4 /梁晌/定义橡滚锋PD.4输出寄存器为蜂鸣器备绝
_Bool S1 @PD_IDR:2 //定义PD.2输入寄存器为按键
//I/O初始化
void GPIO_Init(void)
{
PA_DDR = 0x40//PA.6推挽输出
PA_CR1 = 0x40
PD_DDR = 0x10//PD.2上拉输入 、PD.4推挽输出
PD_CR1 = 0x14
}
main()
{
GPIO_Init()
while(1)
{
if(S1==0) //如果有按键则灯亮,蜂鸣器响
{
LED1 = 1
Beep = 1
}
else
{
Beep = 0
LED1 = 0
}
}
}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)