Settings
|
Sign in
|
Sign up
Bar
Post
Home
>
Bar AVR單片機
>
View post
Reply the post
|
View all
The author has
10
posts.
[案例]ATtiny13驅動74HC595
Floor 1
巨大八爪鱼
7/18/15 21:11
Floor 2
巨大八爪鱼
7/18/15 21:11
「main.c」
#include <avr/io.h>
#define F_CPU 1200000U
#include <util/delay.h>
#include "74HC595.h"
unsigned char display = 0x00;
int main(void)
{
DDRB = PORTB = 0xff;
while (1)
{
HC595_SerIn(~display);
HC595_ParOut();
if (display % 2 == 0)
PORTB |= _BV(4);
else
PORTB &= ~_BV(4);
_delay_ms(500);
display++;
}
return 0;
}
Floor 3
巨大八爪鱼
7/18/15 21:12
「74HC595.c」
#include <avr/io.h>
#include "74HC595.h"
void HC595_ParOut(void)
{
HC595_STCK0;
HC595_STCK1;
}
void HC595_SerIn(unsigned char data)
{
unsigned char i;
for (i = 0; i < 8; i++)
{
HC595_SHCK0; // CLOCK_MAX = 100MHz
if (data & _BV(7 - i))
HC595_SD1;
else
HC595_SD0;
HC595_SHCK1;
}
}
Floor 4
巨大八爪鱼
7/18/15 21:12
「74HC595.h」
#define HC595_SHCK1 PORTB|=_BV(2) // PIN11
#define HC595_SHCK0 PORTB&=~_BV(2)
#define HC595_STCK1 PORTB|=_BV(1) // PIN12
#define HC595_STCK0 PORTB&=~_BV(1)
#define HC595_SD1 PORTB|=_BV(0) // PIN14
#define HC595_SD0 PORTB&=~_BV(0)
void HC595_ParOut(void);
void HC595_SerIn(unsigned char data);
Floor 5
巨大八爪鱼
7/18/15 21:12
「Makefile」
# make
main.hex: main.c 74HC595.c
avr-gcc -mmcu=attiny13 -Wall -Os main.c 74HC595.c -o main.o
avr-objcopy -j .text -j .data -O ihex main.o main.hex
# make run
run: main.hex
sudo avrdude -p t13 -c usbasp -e -U flash:w:main.hex
Floor 6
巨大八爪鱼
7/18/15 21:14
執行make run編譯並燒寫程序。
Floor 7
巨大八爪鱼
7/18/15 21:16
#define HC595_SHCK1 PORTB|=_BV(2) // PIN11
#define HC595_SHCK0 PORTB&=~_BV(2)
#define HC595_STCK1 PORTB|=_BV(1) // PIN12
#define HC595_STCK0 PORTB&=~_BV(1)
#define HC595_SD1 PORTB|=_BV(0) // PIN14
#define HC595_SD0 PORTB&=~_BV(0)
代碼說明:
74HC595的第11腳連接ATtiny的PB2口
第12腳連接ATtiny的PB1口
第14腳連接ATtiny的PB0口
Floor 8
巨大八爪鱼
7/18/15 21:17
右下角黃LED的正極連接到單片機的PB4口上。
Floor 9
巨大八爪鱼
7/18/15 21:20
單片機熔絲位的設定:E:FF, H:FF, L:2A
晶振採用默認的內部9.6MHz晶振,開啟8分頻。
Floor 10
巨大八爪鱼
7/18/15 21:29
Content converter:
No conversion
Mainland
Taiwan
Hong Kong
Singapore
Reply the post
Content:
User:
You are currently anonymous.
Captcha:
Unclear? Try another one.