Nguyên văn bởi i am stupid
Xem bài viết
Thông báo
Collapse
No announcement yet.
Xin giúp nạp Attiny2313
Collapse
X
-
Nếu Tương Lai có thể dự đoán trước thì đó hoàn toàn ko phải là Tương Lai mà chỉ là sự Bịa Đặt.
Bạn có quyền đầu tư cho Tương Lai nhưng chẳng có gì đảm bảo là nó sẽ trở thành Hiện Thực.
-
Nguyên văn bởi Odette Xem bài viếtUh mình sẽ cố hỗ trợ trong tầm khả năng hiểu biết của mình
http://www.youtube.com/watch?v=CJ6MJx6zdaQ
/************************************************** ***
This program was produced by the
CodeWizardAVR V2.05.0 Professional
Automatic Program Generator
© Copyright 1998-2010 Pavel Haiduc, HP InfoTech s.r.l.
HP InfoTech, Development Tools for Microcontrollers, C Compilers, In-System Programmers
Project :
Version :
Date : 6/21/2013
Author : NeVaDa
Company :
Comments:
Chip type : ATmega8
Program type : Application
AVR Core Clock frequency: 8.000000 MHz
Memory model : Small
External RAM size : 0
Data Stack size : 256
************************************************** ***/
#include <mega8.h>
#asm
.equ __ds1302_port=0x12
.equ __ds1302_io=1
.equ __ds1302_sclk=0
.equ __ds1302_rst=2
#endasm
#include <DS1302.h>
#include <delay.h>
// Declare your global variables here
#define DOWN PIND.5
#define UP PIND.6
#define SET PIND.7
#define MODE PIND.3
#define L1 PORTC.0
#define L2 PORTC.1
#define L3 PORTC.2
#define L4 PORTC.3
#define L_DATA PORTB
#define L_SECOND PORTC.4
#define F_OSC 8000000
#define TIME_INTERRUPT 5 // ?
#define PRECALE_1 1 // ?
#define F_TIMER_1 (F_OSC/PRECALE_1) // ?
#define NUMBER_PULSE ((F_TIMER_1*TIME_INTERRUPT)/1000) //?
#define VALUE (65563-NUMBER_PULSE) // ?
unsigned char led7_data[10] = {0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90 };
unsigned char index,button,b_nhay,get_t;
signed char h,m,s;
unsigned int time;
bit f_lag;
interrupt [TIM1_OVF] void timer1_ovf_isr(void)
{
// Reinitialize Timer1 value
TCNT1=VALUE;
L1=0;
L2=0;
L3=0;
L4=0;
if(f_lag)
m=s;
index++;
if(index==1)
{
if(button==1&b_nhay==1)
{
index++;
index++;
}
else
{
L_DATA=led7_data[(h/10)];
L1=1;
}
}
if(index==2)
{
L_DATA=led7_data[h%10];
L2=1;
}
if(index==3)
{
if(button==2&b_nhay==1)
{
index=0;
}
else
{
L_DATA=led7_data[m/10];
L3=1;
}
}
if(index==4)
{
L_DATA=led7_data[m%10];
L4=1;
index=0;
}
}
interrupt [TIM2_OVF] void timer2_ovf_isr(void)
{
TCNT2=0x00;;
time++;
if(time==6000)
{
time=0;
get_t=1;
b_nhay++;
if(b_nhay==2)
b_nhay=0;
}
}
void fix_time(void)
{
if(m==60)
{
m=0;
h++;
}
if(h==24)
h=0;
if(m==-1)
{
m=59;
h--;
}
if(h==-1)
h=23;
}
void keypad (void)
{
if(!SET)
{
button++;
//while(!SET);
}
if(button>2)
{
button=0;
rtc_set_time(h,m,0);
}
if(button==1)
{
if(!UP) h++;
if(!DOWN) h--;
}
if(button==2)
{
if(!UP) m++;
if(!DOWN) m--;
}
if(!MODE)
{
f_lag=!f_lag;
}
fix_time();
delay_ms(100);
}
void main(void)
{
// Declare your local variables here
PORTB=0xff;
DDRB=0xff;
PORTC=0x3f;
DDRC=0x3f;
PORTD=0xEf;
DDRD=0xEf;
// Timer/Counter 1 initialization
// Clock source: System Clock
// Clock value: 1000.000 kHz
// Mode: Normal top=0xFFFF
// OC1A output: Discon.
// OC1B output: Discon.
// Noise Canceler: Off
// Input Capture on Falling Edge
// Timer1 Overflow Interrupt: On
// Input Capture Interrupt: Off
// Compare A Match Interrupt: Off
// Compare B Match Interrupt: Off
TCCR1A=0x00;
TCCR1B=0x01;
TCNT1H=0x3C;
TCNT1L=0xAF;
ICR1H=0x00;
ICR1L=0x00;
OCR1AH=0x00;
OCR1AL=0x00;
OCR1BH=0x00;
OCR1BL=0x00;
// Timer/Counter 2 initialization
// Clock source: System Clock
// Clock value: 250.000 kHz
// Mode: Normal top=0xFF
// OC2 output: Disconnected
ASSR=0x00;
TCCR2=0x01;
TCNT2=0x00;
OCR2=0x00;
// Timer(s)/Counter(s) Interrupt(s) initialization
TIMSK=0x44; // ?
time=0;
index=0;
get_t=0;
#asm("sei")
rtc_init(0,0,0);
while (1)
{
keypad();
if(button==0)
{
if(get_t==1)
{
get_t=0;
rtc_get_time(&h,&m,&s);
delay_ms(10);
}
}
if(s%2)
L_SECOND=1;
else
L_SECOND=0;
delay_us(10);
}
}Attached Files
Comment
-
mình đọc ở đâu đó là atiny là dòng chip duy nhất của atmel chỉ chạy với thạch anh nội hay đây là các chíp atiny mới.nếu chíp chỉ chạy với thạch anh nội thì fuse bit khó mà sai được . cắm vào là nạp chẳng cần set fuse bit làm gì (cái này dùng test với thạch anh nội nên làm thử rùi mới fuse bit các giá trị khác)
Comment
-
Nguyên văn bởi dtcn_112 Xem bài viếtmình đọc ở đâu đó là atiny là dòng chip duy nhất của atmel chỉ chạy với thạch anh nội hay đây là các chíp atiny mới.nếu chíp chỉ chạy với thạch anh nội thì fuse bit khó mà sai được . cắm vào là nạp chẳng cần set fuse bit làm gì (cái này dùng test với thạch anh nội nên làm thử rùi mới fuse bit các giá trị khác)
Comment
-
mình đọc bài anh Dương rùi .nhưng tài liệu về atiny mình không có nhiều .mình không biết nhiều chip atiny lắm nhưng các chíp atmega mình đã dùng và nó có cả chế độ thach anh nội và thạch anh ngoại. còn chíp atiny mình đọc ở đâu đó là nó chỉ có thạch anh nội không có dùng dao động ngoại. trang đó mình không nhớ nữa mình cũng chưa làm mạch thật dùng chíp atiny bao giờ .
Comment
-
Nguyên văn bởi dtcn_112 Xem bài viếtmình đọc bài anh Dương rùi .nhưng tài liệu về atiny mình không có nhiều .mình không biết nhiều chip atiny lắm nhưng các chíp atmega mình đã dùng và nó có cả chế độ thach anh nội và thạch anh ngoại. còn chíp atiny mình đọc ở đâu đó là nó chỉ có thạch anh nội không có dùng dao động ngoại. trang đó mình không nhớ nữa mình cũng chưa làm mạch thật dùng chíp atiny bao giờ .
Comment
Bài viết mới nhất
Collapse
-
bởi tungdqEm cần tìm sơ đồ mạch một số Main máy tính đời cao như Asrock B560M-HDV, các cao nhân chỉ giúp với. Thank!
-
Channel: Các mạch điện ứng dụng
hôm nay, 08:27 -
-
Trả lời cho Kiểm tra biến ápbởi lamvu0677nhân tiện cho mình hỏi thêm về cái phần test hipot (cao áp),là để kiểm tra độ bền cách điện giưa các cuộn dây,mà thấy thông số test thường ở mức 4kvac,vậy nếu mấy con fail đó xài bình thường vẫn dduocj phải không ạ,vì điện mình làm gì lên tới mức đó
-
Channel: Điện tử dành cho người mới bắt đầu
10-11-2024, 08:52 -
-
Trả lời cho Kiểm tra biến ápbởi lamvu0677máy đo số vòng thì cty có ,mà nó to quá,tưởng có máy nào gọn gọn bỏ túi được thì tiện hơn,vì đi lại nhiều...
-
Channel: Điện tử dành cho người mới bắt đầu
10-11-2024, 08:47 -
-
bởi tmcodonMình thấy diễn đàn có chuyên mục quảng cáo rồi mà. Bạn đóng góp để mở luồng riêng
-
Channel: Hướng dẫn sử dụng diễn đàn
09-11-2024, 13:36 -
-
bởi Nicole08Xin chào mọi người, tôi đã sử dụng Flashforge Inventor 2 được gần 5 năm và rất hài lòng với nó, nhưng tuần trước đã xảy ra sự cố. Có vẻ như động cơ bước đưa sợi in vào đầu nóng đã bị hỏng. Mọi thứ khác có vẻ ổn trên máy...
-
Channel: Điện tử dành cho người mới bắt đầu
09-11-2024, 12:55 -
Comment