// 熔丝位 F7 DC F9 FF
// pb0 或 pd7 低 为故障 -》》 PD5输出低 PC0 PC1 PC2输出高电平
//PD3为高电平 应急 -》》 PD6 30%
//PD2为低电平 正常 -》》 PD6 拨码开关
//pb6高 -->> PB2低
#include <iom88v.h>
#include <macros.h>
unsigned char yingji_sign;
unsigned char normal_sign;
unsigned char pwm_1;
unsigned char pwm_2;
unsigned char pwm_3;
unsigned char pwm_4;
unsigned int count1=0;
unsigned char PWM_T=0;
void timer0_init(void)
{
TCCR0A = 0x00;
//TCCR0B = 0x03; //预分频/64 启动TIME0 普通模式
TCCR0B|=BIT(1);
TCNT0 = 249; //晶振12MHz, 频率为1KHz 256 - 1200000*1ms / 8 / 1000
TIMSK0 = 0x01; //使能时钟中断
SREG |= 0x80; //使能全局中断
}
void port_init(void)
{
// 0110 0000 PD3 PD4 PD7 in PD2 PD5 PD6out
DDRD = 0x64;
PORTD = 0x00;
// 0000 0111 PC0 PC1 PC2 PC5out PC3 PC4in(switch)
DDRC = 0x27;
PORTC = 0x00;
// 0000 0000 PB0 PB2 in PB7测试
DDRB = 0x80;
PORTB = 0x00;
}
/*按键检测*/
void check(void)
{
swit
ATmega88简单引脚设置
最新推荐文章于 2022-10-08 19:12:16 发布
本文详细介绍了如何对ATmega88微控制器进行简单的引脚配置,包括输入输出设置、电源管理及外部中断配置,适用于电子工程初学者。
摘要由CSDN通过智能技术生成