#include <iom48v.h>
#include <macros.h>
#include "delay.h"
//局部变量
unsigned char zhouchang;
unsigned int time;
unsigned long num,sudu;
//全局变量
extern unsigned char mode;
//TIMER1中断声明
#pragma interrupt_handler Timer1_OVF_ISR:iv_TIMER1_OVF
//脉冲中断声明
#pragma interrupt_handler pcint3_isr:iv_WDT
//圈数脉冲
void pcint3_isr(void)
{
// SEI();
if(PINB==0b00000011) //圈数脉冲
{
num++;
sudu=360000/time*zhouchang;
time=0;
}
if(PINB==0b00001001) //上按键 调整按键
{
if(mode==2)
{
zhouchang++;
if(zhouchang==0)
{
zhouchang=100;
}
}
}
if(PINB==0b00001010) //下按键 模式按键
{
mode++;
if(mode==4)
{
mode=0;
}
}
}
//定时器1中断函数
void Timer1_OVF_ISR(void)
{
// SEI();
TCCR1B=0x00;
TCNT1H=0xD8;
TCNT1L=0xF0;
TCCR1B=0x01;
time++;
if(time==500) //5秒超时归零
{
time=0;
sudu=0;
}
}
void main(void)
{
//初始化变量
mode=0;
zhouchang=152;
sudu=0;
//定时器中断
TCNT1H=0xD8;
TCNT1L=0xF0;
TCCR1B=0x01;
TIMSK1=0X01;
//脉冲中断
DDRB=0xF4; //PB0 PB1 口用作上下按键 PB3为圈数脉冲 均为输入
PORTB=0x0B; //打开 PB0 PB1 PB3 上拉电阻
PCICR=0x01; //开启PCINT0-7中断
PCMSK0=0x0B; //使用PB0 PB1 PB3引脚电平变化中断
SEI(); //开启中断
while(1)
{
if(mode==0) //mode=0 显示速度
{
display(sudu);
}
if(mode==1) //mode=1 显示距离
{
display(num*zhouchang);
}
if(mode==2) //mode=2 显示周长
{
display(zhouchang);
}
if(mode==3)
{
display(time);
}
}
}
没有合适的资源?快使用搜索试试~ 我知道了~
lichengbiao.rar_atmega48_atmega48 pd_电动车_速度里程_里程表
共237个文件
_c:3个
110418131022:2个
110418130412:2个
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 75 浏览量
2022-09-22
22:23:17
上传
评论
收藏 177KB RAR 举报
温馨提示
atmega48制作的电动车里程表,PB0 PB1 口用作上下按键 PB3为圈数脉冲 脉冲输入用霍尔44E作为脉冲输入,PD作为4位数码管显示端口,有3种显示模式速度、里程、车轮周长
资源详情
资源评论
资源推荐
收起资源包目录
lichengbiao.rar_atmega48_atmega48 pd_电动车_速度里程_里程表 (237个子文件)
delay.h.070501142750 849B
system.c.110416221716 0B
system.c.110416221828 44B
delay.h.110416221926 849B
system.c.110416221948 66B
display.c.110416222040 0B
display.c.110416222434 216B
display.c.110416222940 585B
display.c.110416223536 2KB
display.c.110416223626 2KB
display.c.110416223720 2KB
system.c.110416223838 89B
delay.h.110416223850 846B
display.c.110416223912 2KB
delay.h.110416224142 846B
display.c.110416224148 2KB
delay.h.110416224342 846B
display.c.110416224800 2KB
delay.h.110416225042 844B
system.c.110416225048 131B
system.c.110416230656 145B
system.c.110416230712 127B
system.c.110416230716 107B
system.c.110416230730 125B
system.c.110416230818 147B
display.c.110416230834 2KB
display.c.110416231104 2KB
delay.h.110416231612 846B
delay.h.110416231620 846B
delay.h.110416231640 845B
delay.h.110416231808 849B
system.c.110416231834 145B
display.c.110416231906 2KB
delay.h.110416232004 849B
delay.h.110416232010 849B
delay.h.110416232602 849B
system.c.110416232644 123B
system.c.110416232716 141B
system.c.110416232744 140B
system.c.110416232904 140B
system.c.110416233026 143B
system.c.110416233352 103B
system.c.110416233418 121B
display.c.110416233512 2KB
display.c.110416233556 2KB
system.c.110416233556 141B
display.c.110416233758 2KB
display.c.110416233824 2KB
system.c.110416233824 121B
display.c.110416233924 2KB
system.c.110416233924 141B
display.c.110416234558 2KB
system.c.110416234558 127B
display.c.110416234638 2KB
display.c.110416234746 2KB
system.c.110416234746 143B
system.c.110416234754 143B
display.c.110416234838 2KB
system.c.110416234930 159B
display.c.110416235152 2KB
display.c.110416235316 2KB
display.c.110416235320 2KB
system.c.110416235342 173B
display.c.110416235522 2KB
display.c.110416235614 2KB
display.c.110416235702 2KB
display.c.110416235750 2KB
system.c.110416235818 141B
display.c.110417000112 2KB
display.c.110417000224 2KB
display.c.110417000246 2KB
display.c.110417000340 2KB
display.c.110417000516 2KB
display.c.110417000522 2KB
display.c.110417000604 2KB
display.c.110417000646 2KB
display.c.110417000726 2KB
display.c.110417000802 2KB
display.c.110417000848 2KB
display.c.110417001052 2KB
display.c.110417001236 2KB
system.c.110417001400 160B
system.c.110417002810 275B
system.c.110417002822 279B
system.c.110417002950 341B
system.c.110417003254 361B
system.c.110417003340 379B
system.c.110417003406 379B
system.c.110417003516 397B
system.c.110417003524 397B
system.c.110417003552 401B
system.c.110417003748 401B
system.c.110417003954 397B
system.c.110417004142 397B
system.c.110417004338 397B
system.c.110417004734 317B
system.c.110417004820 317B
system.c.110417004844 317B
system.c.110417005514 425B
system.c.110417005906 440B
共 237 条
- 1
- 2
- 3
weixin_42651887
- 粉丝: 79
- 资源: 1万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论0