欢迎访问ic37.com |
会员登录 免费注册
发布采购

MEGA128CAN 参数 Datasheet PDF下载

MEGA128CAN图片预览
型号: MEGA128CAN
PDF下载: 下载PDF文件 查看货源
内容描述: 微控制器,带有ISP功能的Flash和CAN控制器128K字节 [Microcontroller WITH 128K BYTES OF ISP FLASH AND CAN CONTROLLER]
分类和应用: 微控制器
文件页数/大小: 413 页 / 5507 K
品牌: ATMEL [ ATMEL ]
 浏览型号MEGA128CAN的Datasheet PDF文件第178页浏览型号MEGA128CAN的Datasheet PDF文件第179页浏览型号MEGA128CAN的Datasheet PDF文件第180页浏览型号MEGA128CAN的Datasheet PDF文件第181页浏览型号MEGA128CAN的Datasheet PDF文件第183页浏览型号MEGA128CAN的Datasheet PDF文件第184页浏览型号MEGA128CAN的Datasheet PDF文件第185页浏览型号MEGA128CAN的Datasheet PDF文件第186页  
The following code example shows a simple USART0 receive function that handles both  
nine bit characters and the status bits.  
Assembly Code Example(1)  
USART0_Receive:  
; Wait for data to be received  
lds  
r18, UCSR0A  
sbrs r18, RXC0  
rjmp USART0_Receive  
; Get status and 9th bit, then data from buffer  
lds  
lds  
r17, UCSR0B  
r16, UDR0  
; If error, return -1  
andi r18, (1<<FE0) | (1<<DOR0) | (1<<UPE0)  
breq USART0_ReceiveNoError  
ldi  
ldi  
r17, HIGH(-1)  
r16, LOW(-1)  
USART0_ReceiveNoError:  
; Filter the 9th bit, then return  
lsr  
r17  
andi r17, 0x01  
ret  
C Code Example(1)  
unsigned int USART0_Receive( void )  
{
unsigned char status, resh, resl;  
/* Wait for data to be received */  
while ( ! (UCSR0A & (1<<RXC0)))  
;
/* Get status and 9th bit, then data */  
/* from buffer */  
status = UCSR0A;  
resh = UCSR0B;  
resl = UDR0;  
/* If error, return -1 */  
if ( status & (1<<FE0)|(1<<DOR0)|(1<<UPE0) )  
return -1;  
/* Filter the 9th bit, then return */  
resh = (resh >> 1) & 0x01;  
return ((resh << 8) | resl);  
}
Note:  
1. The example code assumes that the part specific header file is included.  
The receive function example reads all the I/O Registers into the Register File before  
any computation is done. This gives an optimal receive buffer utilization since the buffer  
location read will be free to accept new data as early as possible.  
182  
AT90CAN128  
4250E–CAN–12/04  
 复制成功!