⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 main._c

📁 avr单片机atmage16驱动小灯的一些例程 并且包括一些收发数据的程序利用usb口
💻 _C
字号:
/*
实验八:
	AD转换实验。
	1、AD转换实验。程序进行周期AD转换,在并转换值显示在数码管上。
	2、使用内部1 M晶振。
	3、进行此实验需要插上:JP1的所有8个短路块、JP9(A/D)。
	4、此实验采用项目化管理,主要文件有ADC、DISP、主程序。

	AVR  mega16学习板
	www.iccavr.com
	2006-04-05
*/

#include "iom16v.h"
#include <macros.h>

extern unsigned char get_ad(void);/*AD采样函数*/
extern void Disp_Init(void);/*显示初始化*/
extern unsigned char led_buf[];/*显示缓存*/

/*延时函数,频率1MHz,单位mS*/
void delay_ms(unsigned char i) {

	unsigned char a, b;
	for (a = 1; a < i; a++) {
		for (b = 1; b; b++) {
			;
			}
		}
}

void main(void) {

	unsigned char i;
	DDRA = 0xFF;				/*方向输入*/
	PORTA = 0x7F;				/*打开上拉*/
	DDRB = 0xFF;				/*方向输出*/
	PORTB = 0xFF;				/*电平设置*/
	DDRC = 0x00;
	PORTC = 0xFF;
	DDRD = 0x00;
	PORTD = 0xFF;

	delay_ms(200);				/*加入延时*/
	Disp_Init();				/*电平设置*/
	while (1) {
		delay_ms(100);			/*周期控制*/
		i = get_ad();			/*获取电压*/
		led_buf[3] = 0;			/*数值转换*/
		led_buf[2] = i / 100;
		led_buf[1] = (i % 100) / 10;
		led_buf[0] = (i % 10);
		}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -