atemega 8ルーチン:ランプ点滅

2030 ワード

C言語「ビット演算」:
AND演算:1×1=1       1×0=0   0×1=0   0×0=0
「または」演算:1+1=11+0=10+1=10+0=0
「排他的OR^」演算:1^1=0 1^0=1 0^1=1 0^0=0
設定:PORTA==10110100 x=(0~7)
PORTA&=~(0 x 01<PORTA|=(0 x 01<PORTA^=(0 x 01<______________________________________
C言語常識:論理「真」:非「0」、論理「偽」:「0」.
______________________________________
判定ポートAのある「ビット」の値:x=(0~7)
If(PORTA &(0x01<if式では、xビットの値が1の場合、式は「0ではない」ため「真」であり、xビットの値が0の場合、式は「0」のため「偽」である.
 AVR       DDRx   0x00PORTx   0x00
/***********************************************************
*       :ATMEGE8                                  
*    :      v1.0									       
*    :        									       
*      :  2011 08 01 							   
*														   
*    :	    										   
*                                                          
*      :                                              
*                                                                                          
************************************************************
*  : LED  C5                                            
***********************************************************/

#include <avr/io.h>

int main(void)
{
    unsigned int i,j;
	
    //PORTC5     
    DDRC |= (1 << DDC5);
    //PORTC5     ,LED 
	PORTC &= ~(1 << PORTC5);
	
    while(1)
    {
	//  
	PORTC ^= (1 << PORTC5);
	for(i = 0;i < 100;i ++)
	    for(j = 0;j < 1000;j ++);
    }
}