📄 eepromad.c
字号:
#define EXT_EEPROMAD_GLOBALS
#include "includes.h"
void EEPROM_write(unsigned int uiAddress, unsigned char ucData)
{
/* 等待上一次写操作结束 */
while(EECR & (1<<EEWE));
/* 设置地址和数据寄存器 */
EEAR = uiAddress;
EEDR = ucData;
/* 置位EEMWE */
EECR = 0x04; //(1<<EEMWE);
/* 置位EEWE 以启动写操作*/
EECR = 0x06;
}
unsigned char EEPROM_read(unsigned int uiAddress)
{
/* 等待上一次写操作结束 */
while(EECR & (1<<EEWE));
/* 设置地址寄存器*/
EEAR = uiAddress;
/* 设置EERE 以启动读操作*/
EECR |= (1<<EERE);
/* 自数据寄存器返回数据 */
return EEDR;
}
/************************************************************
Function Name: SIGNAL(TIMER0_COMPA_vect)
Function: Timer0 interrupt
Paramenter: TIMER0_COMPA_vect
Return value: None
Author: Chen yuan zhen May.30.2008
*************************************************************/
/*ADC采样函数,采样第6通道信号,采样分辨率256*/
unsigned char get_ad(unsigned char SensorTest)
{
unsigned char i;
ADMUX = 0x60|SensorTest; /*AREF、左对齐、通道6*/
ADCSRA = 0xC3; /*使能、开启、2分频*/
while(!(ADCSRA & (1 << ADIF))); /*等待*/
i = ADCH;
ADCSRA &= ~(1 << ADIF); /*清标志*/
ADCSRA &= ~(1 << ADEN); /*关闭转换*/
return i;
}
/************************************************************
Function Name: SIGNAL(TIMER0_COMPA_vect)
Function: Timer0 interrupt
Paramenter: TIMER0_COMPA_vect
Return value: None
Author: Chen yuan zhen May.30.2008
*************************************************************/
/*ADC采样函数,采样第6通道信号,采样分辨率256*/
void AdControl(void)
{
unsigned char i;
DDRF=0x00;
i=2;
// for(i=0;i<8;i++)
// {
PulseDispose[0].PwmPulse=get_ad(i); //AdTest[i]=get_ad(i); // PulseDispose[16+i].PwmPulse=get_ad(i);
// }
DDRF=0xFF;
DisposePwm( ); //
TransferStruct( );
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -