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

📄 define.h

📁 ds18b20在数码管上显示温度,在avr128已编译通过
💻 H
字号:


#ifndef	_DEFINE_H
#define	_DEFINE_H

//declare
typedef	unsigned char	Byte;
typedef	unsigned int	Word;
typedef	unsigned long	Long;


unsigned long u_ltemp;//临时变量long型
unsigned int u_wtemp;//临时变量word型
unsigned char u_btemp;//临时变量byte型
int	s_wtemp;//有符号临时变量word型

//LED灯端口定义
#define LED_PORT PORTA
	#define LED1 PA0
	#define LED2 PA1
	#define LED3 PA2
	#define LED4 PA3
	#define LED5 PA4
	#define LED6 PA5
	#define LED7 PA6
	#define LED8 PA7
	
//蜂鸣器定义
#define BELL_PORT PORTE
	#define BELL 4
	#define BELL_ON() BELL_PORT &=~ BIT(BELL)
	#define BELL_OFF() BELL_PORT |= BIT(BELL)

#define SMG_PORT PORTA//数码管端口a~ h
#define SMG_BIT_PORT PORTC//数码管位选端口

//数码管显示相关数据定义
unsigned char sbit_led;//sbit_led为数码管位选择
unsigned char led_disbuf[8];
unsigned char led_buf[8];//数码管8字节数据
unsigned char led_table[26]= //数码管段码表
{
    0xC0,/*0*/
    0xF9,/*1*/
    0xA4,/*2*/
    0xB0,/*3*/
    0x99,/*4*/
    0x92,/*5*/
    0x82,/*6*/
    0xF8,/*7*/
    0x80,/*8*/
    0x90,/*9*/
    0x88,/*A*/
    0x83,/*b*/
    0xA7,/*C*/
    0xA1,/*d*/
    0x86,/*E*/
    0x8E,/*F*/
    0x8B,/*h*/
    0x89,/*H*/
    0xA3,/*o*/
    0x8C,/*p*/
    0xC7,/*L*/
    0xAF,/*r*/
    0x91,/*y*/
    0xBF,/*-*/
    0xF7,/*_*/
    0xff,/* */
};

unsigned char t0_ovfnum;//t0溢出次数

//ds18b20相关定义
#define 	DS18B20_PORT 	PORTE
#define 	DS18B20_PIN 	PINE
#define 	DS18B20_DDR 	DDRE
	#define	DS18B20_IO	PE2


#define 	CLR_DS18B20  	DS18B20_PORT &=~ BIT(DS18B20_IO) //数据线强制拉低
#define 	SET_DS18B20  	DS18B20_PORT |= BIT(DS18B20_IO)	 //数据线强制拉高
#define 	HLD_DS18B20 	DS18B20_DDR |= BIT(DS18B20_IO)	 //控制总线设为输出
#define		RLS_DS18B20		DS18B20_DDR &=~ BIT(DS18B20_IO)  //释放总线设为输入
#define		STU_DS18B20		DS18B20_PIN & BIT(DS18B20_IO) 	//数据线的状态

//unsigned int temperture;//温度
float temperture;

#endif

⌨️ 快捷键说明

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