Nguyên văn bởi i am stupid
Xem bài viết
Xin giúp nạp Attiny2313
Collapse
X
-
xem giúp mình cái này với giải thích cho mình những chỗ ?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
/************************************************** ***
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
-
ban không đọc bác quế dương nói gì à?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
-
rất là mơ hồ không chắc thì thôi đừng nói.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
-
Trả lời cho Tìm bạn thân quen cũ.bởi nhathung1101Còn sống không lão??? Mất một thời gian chữa bệnh nên quên hỏi thăm.......
-
Channel: Tâm tình dân kỹ thuật
hôm nay, 03:09 -
-
Trả lời cho Công suất truyền qua lõi máy biến ápbởi nhathung1101Thời buổi năng lượng xanh, nhất là xanh cả mặt... Thì Điện mặt giời, điện gió, sẽ lên ngôi.
Nếu không nắm bắt được cái cơ bản đó thì đi làm coder à? Mà coder giờ thất nghiệp cả lũ vì AI rồi!!!









...
-
Channel: Điện tử công suất
hôm nay, 03:03 -
-
Trả lời cho Công suất truyền qua lõi máy biến ápbởi quangdonguehChà, lâu lắm rồi nhưng diễn đàn vẫn còn những chủ đề cốt lõi của điện tử công suất...-
Channel: Điện tử công suất
Hôm qua, 07:53 -
-
bởi bqvietNếu muốn tăng công suất cần tăng con chip và tăng biến áp lên lớn hơn. Thiết kế ban đầu dùng TNY25x và biến áp EE16 hoặc EE13. Tăng con chip lên TNY268 vẫn mạch nguyên lý đó và biến áp lên EE19 sẽ nâng công suất ra thêm nhiều. Tăng tối đa...-
Channel: Điện tử công suất
Hôm qua, 02:14 -
-
bởi Nexus 6PMạch này chỉ chạy cho LED 10W trở xuống, còn muốn chạy Led công suất cao thì sao bác thớt ơi?-
Channel: Điện tử công suất
22-10-2026, 14:33 -
-
bởi Nexus 6PMạch này chỉ chạy cho LED 10W trở xuống, còn muốn chạy Led công suất cao thì sao bác thớt ơi?-
Channel: Điện tử công suất
22-10-2026, 10:49 -
-
Trả lời cho Tìm VR 5 chânbởi dinhthuong80Cảm ơn bác bqviet . Nhưng hình như các VR 5 chân của linhkienchatluong là loại có 2 chân là công tắc đóng mở. Thấy trên Shopee có chỗ bán linh kiện đàn Organ, mà không biết đúng loại không, với lại sao ... mắc dữ dội luôn ấy!!!
...-
Channel: Hướng dẫn tìm thông tin linh kiện
19-10-2026, 11:30 -
-
Trả lời cho Tìm VR 5 chânbởi bqvietTrang sản phẩm này có loại 5 chân và 8 chân
https://linhkienchatluong.vn/chiet-a...doi_s1595.aspx
Ngoài ra một trang cùng cấp với nó có loại 6 chân nữa, chắc đủ cho người muốn tìm....-
Channel: Hướng dẫn tìm thông tin linh kiện
17-10-2026, 17:19 -
-
bởi dinhthuong80Chào cả nhà, chúc cuối tuần vui vẻ!
Hôm nay mình lên đây nhờ ai biết chỉ dùm biến trở 5 chân này tên gọi là gì, có thể mua ở đâu vậy? Xin cám ơn nhiều! ...-
Channel: Hướng dẫn tìm thông tin linh kiện
-

Comment