các bác cho em hỏi lập trình avr bằng c thì dùng phần mền nào ạ phần mền nào là tốt nhất
Thông báo
Collapse
No announcement yet.
dùng phần mền nào lập trình cho avr tốt nhất?
Collapse
X
-
Các phiên bản codevisionAVR mới gần đây có hiện tượng ko nhận chip trong mạch nạp các loại dù đã xxx mọi cách, có lẽ do nhà sx cố tình làm thế để ép người dùng mua bản quyền, vì thế hiện tại mình lập trình = codevision nhưng nạp code = avrstudio4 là ngon lành, vả lại trong hệ thống thiết lập fusebit của codevision khi mình chọn chip là ATMEGA8 thì ko thấy bit SPIEN, cái bit này cực quan trọng, trong khi đó avrstudio thì có đủ fusebit, cao thủ nào biết vụ này xin giải thích giúp (mình dùng Codevision 2.5.6 để các bác không nói mình dùng bản cũ nên thiếu này nọ).Làm sao mà bạn dám nói là không làm được khi bạn chưa từng thử một lần nào.
Ngay cả khi bạn đã làm 1 lần và thất bại bạn cũng không có quyền nói là không làm được vì bạn chưa làm lần thứ 2,3...
Comment
-
-Mới thì nên học codevison, biết chút đỉ thì chuyển sang AVRstudio với trình biện dịch WinAVR chính hãng luôn,các VD trong hocavr.com đều viết bằng thằng này, nên chiụ khó đọc sẽ rất dễ hiểu...
-Lúc trước mình cũng sài codevision, nhưng làm nhiều cái phức tạp codevison trở thành khó hiểu và khó sửa...
-Codevison dọn sẳng nhiều thứ, nhưng rồi đến một lúc tự nấu tự chế biến thì rất khó khăn..
-còn sài thằng nào là tùy mục đính và khả năng..
Comment
-
mình lâu không còn dùng CV nữa ... nhưng cái này chắc do dùng phần " tự tạo mã " wizard nó mới vậy ... chứ tự viết thì chẳng có gì là thừa cả !Nguyên văn bởi nguyentuanqs Xem bài viếtmình toàn dùng avrstudio. thư viện cho nó thì rất nhiều trên mạng. mà mình thấy nhiều khai báo trong codevision rối và phức tạp. nhiều cái không cần thiết cũng khai báo ra làm mình mò mỗi khi gặp lỗi rất khó chịu.Module RF chuyên dụng điều khiển, truyền dữ liệu, thiết kế đề tài, dự án điện tử - chuyển giao công nghệ... ĐT: 0904964977 - email: dientuqueduong@yahoo.com
Comment
-
chuẩn rồi đấy ạ.Nguyên văn bởi queduong Xem bài viếtmình lâu không còn dùng CV nữa ... nhưng cái này chắc do dùng phần " tự tạo mã " wizard nó mới vậy ... chứ tự viết thì chẳng có gì là thừa cả !
Comment
-
A [MENTION=45]queduong[/MENTION] ơi, xem hộ em cái này với ạ. em mò mà chưa nghĩ ra lỗi ở đâu . http://www.dientuvietnam.net/forums/...nh-voi-165156/
Nguyên văn bởi nguyentuanqs Xem bài viếtmình đang làm đề tài có liên quan đến tách dữ liệu ( giao thức NMEA trong thông tin vệ tinh sử dụng SIM các bạn nhé). đoạn mã có dạng : $GPGGA,002153.000,3342.6618,N,11751.3858,W,1,10,1. 2,27.0,M,34.2,M,,000 *5E. được truyền liên tiếp qua uart vào vi điều khiển. các đoạn mã có nội dung tương tự cũng được truyền tiếp theo. ví dụ thông tin truyền vào có thể có dạng :....$GPGGA,002153.000,3342.6618,N,11751.3858,W,1, 10,1.2,27.0,M,34.2,M,,000 *5E$GPGGA,5467.000,4578.6618,N,11751.5426,W,2,10,2 .2,12.0,M,376.2,M,,040 *5E.... dạng như vậy. trong đó đoạn đầu có thể thay đổi tùy thuộc vào định dạng dữ liệu. như với đoạn code trên $GPGGA cho biết thông tin sau nó gồm có thời gian, kinh độ, vĩ độ, khoảng cách so với mực nước biển. giờ mình đang loay hoay với thuật toán tách dữ liệu ra. ví như trong dòng dữ liệu vào ta phải bắt được chuỗi có mào đầu là $GPGGA rồi sau đó lại tách ra các dữ liệu đã nói trên. ($GPGGA(mào đầu),002153.000(thời gian),3342.6618,N(vĩ độ),11751.3858,W(kinh độ),1,10,1.2,27.0,M,34.2,M,,000 *5E. dữ liệu tách ra cần cho lưu vào một biến riêng và được truyền đi vào máy tính như sau. pro nào chỉ giáo giúp mình nhé. mình có tham khảo đoạn code sau sử dụng trong 1 ngắt uart nhưng khi viết thì không thực hiện đươc. nếu ai biết sai chỗ nào thì chỉ mình luôn với nhé.
thank mọi người đã đọc!Code:ISR (SIG_USART1_RECV) { data = UDR1; putChar_LCD(data); Uart0_Trans(data); Process_Data(data); } // ham xu ly du lieu ngat void Process_Data(char data) { stt = 0; switch(stt){ case 1: if(data!='$') stt=0; break; case 2: if(data!='G') stt=0; break; case 3: if(data!='P') stt=0; break; case 4: if(data!='G') stt=0; break; case 5: if(data!='G') stt=0; break; case 6: if(data!='A') stt=0; break; case 7: if(data!=',') stt=0; break; //--------tach phan thoi gian------------ case 8: if(data<'0' || data>'9') stt=0; else time[0]=data; break; case 9: if(data<'0' || data>'9') stt=0; else time[1]=data; break; case 10: if(data<'0' || data>'9') stt=0; else time[2]=data; break; case 11: if(data<'0' || data>'9') stt=0; else time[3]=data; break; case 12: if(data<'0' || data>'9') stt=0; else time[4]=data; break; case 13: if(data<'0' || data>'9') stt=0; else time[5]=data; break; case 14: if(data!='.') stt=0; else time[6]=data; break; case 15: if(data<'0' || data>'9') stt=0; else time[7]=data; break; case 16: if(data<'0' || data>'9') stt=0; else time[8]=data; break; case 17: if(data<'0' || data>'9') stt=0; else time[9]=data; break; case 18: if(data!=',') stt=0; break; //----------tach phan vi do----------------- case 19: if(data<'0' || data>'9') stt=0; else vido[0]=data; break; case 20: if(data<'0' || data>'9') stt=0; else vido[1]=data; break; case 21: if(data<'0' || data>'9') stt=0; else vido[2]=data; break; case 22: if(data<'0' || data>'9') stt=0; else vido[3]=data; break; case 23: if(data!='.') stt=0; else vido[4]=data; break; case 24: if(data<'0' || data>'9') stt=0; else vido[5]=data; break; case 25: if(data<'0' || data>'9') stt=0; else vido[6]=data; break; case 26: if(data<0 || data>9) stt=0; else vido[7]=data; break; case 27: if(data<0 || data>9) stt=0; else vido[8]=data; break; case 28: if(data!=',') stt=0; else vido[9]=data; break; case 29: if(data!='N' || data!='S') stt=0; else vido[10]=data; break; case 30: if(data!=',') stt=0; break; //----------tach phan kinh do------------------ case 31: if(data<0 || data>9) stt=0; else kinhdo[0]=data; break; case 32: if(data<0 || data>9) stt=0; else kinhdo[1]=data; break; case 33: if(data<0 || data>9) stt=0; else kinhdo[2]=data; break; case 34: if(data<0 || data>9) stt=0; else kinhdo[3]=data; break; case 35: if(data<0 || data>9)stt=0; else kinhdo[4]=data; break; case 36: if(data!='.') stt=0; else kinhdo[5]=data; break; case 37: if(data<0 || data>9) stt=0; else kinhdo[6]=data; break; case 38: if(data<0 || data>9) stt=0; else kinhdo[7]=data; break; case 39: if(data<0 || data>9) stt=0; else kinhdo[8]=data; break; case 40: if(data<0 || data>9) stt=0; else kinhdo[9]=data; break; case 41: if(data!=',') stt=0; else kinhdo[10]=data; break; case 42: if(data!='E' || data!='W') stt=0; else kinhdo[12]=data; break; case 43: if(data!=',') stt=0; break; default : stt=0; break; } }


Comment
-
mình dùng IAR , CodeVision , AVRstudio+ GCC , mikroC nhưng chẳng thấy cái gì khác biệt hơn thằng mikroC ... thế là mình toàn dùng mikroC ... nhưng nạp thì dùng STK500 sử dụng với AVR studio ( vì bản thân thằng AVR studio set cấu hình ( Fuse) dễ mà chuẩn ! ), những thằng khác loằng ngoằng, khó chịu ( có khi còn vớ vẩn nữa) !Module RF chuyên dụng điều khiển, truyền dữ liệu, thiết kế đề tài, dự án điện tử - chuyển giao công nghệ... ĐT: 0904964977 - email: dientuqueduong@yahoo.com
Comment
-
theo mình bạn nên dùng 1 buffer ( mảng ) đủ chiều dài để lưu trữ bản tin ... rồi xử lý ... là cách đơn giản và dễ dàng nhất !Nguyên văn bởi nguyentuanqs Xem bài viếtA @queduong ơi, xem hộ em cái này với ạ. em mò mà chưa nghĩ ra lỗi ở đâu . http://www.dientuvietnam.net/forums/...nh-voi-165156/
cách đọc cả bản tin ... thì kiểm tra " lúc nào bắt được kí tự " bắt đầu $" thì ( for i = .... đến ...max)... sau khi bản tin đã được lưu vào bộ đệm xong, thì lấy dữ liệu từ bộ đệm ra khai thác thôi ! Khai thác xong lại tiếp tục đọc lượt mới !Module RF chuyên dụng điều khiển, truyền dữ liệu, thiết kế đề tài, dự án điện tử - chuyển giao công nghệ... ĐT: 0904964977 - email: dientuqueduong@yahoo.com
Comment
Bài viết mới nhất
Collapse
-
bởi hayarNăm 2026 việc chọn laptop gaming chủ yếu vẫn là cân bằng vì giá cả và phần cứng thay đổi liên tục, nên tập trung vào GPU ổn, tản nhiệt tốt và hiệu năng thực tế sẽ quan trọng hơn việc chạy theo cấu hình cao nhất, giống như trong nulls brawl, chơi hay hơn khi biết cách tối ưu và chọn chiến...
-
Channel: Đánh giá sản phẩm DTVN
01-07-2026, 21:23 -
-
bởi theidiotcatDưới đây là một số gợi ý để các bạn sinh viên chọn được chiếc laptop phù hợp với nhu cầu, ngân sách và ngành học trong bối cảnh giá linh kiện leo thang kéo theo mức giá laptop liên tục tăng cao.
Bước vào mùa tựu trường năm...-
Channel: Đánh giá sản phẩm DTVN
30-06-2026, 11:26 -
-
bởi theidiotcatAMD Ryzen 9 9950X bước sang năm 2026 vẫn là một trong những bộ vi xử lý desktop mạnh mẽ nhất dành cho người dùng phổ thông cao cấp. Dù đã ra mắt từ thế hệ Zen 5 đầu tiên của dòng Ryzen 9000, con chip 16 nhân 32 luồng này vẫn giữ được sức...
-
Channel: Đánh giá sản phẩm DTVN
29-06-2026, 13:58 -
-
bởi theidiotcatTrong thị trường CPU năm 2026, khi các dòng vi xử lý đời mới liên tục ra mắt với những thông số kỹ thuật hào nhoáng, AMD Ryzen 5 7600X vẫn là một cái tên khiến nhiều game thủ và người dùng phổ thông phải cân nhắc kỹ lưỡng. Sau gần hai...
-
Channel: Đánh giá sản phẩm DTVN
29-06-2026, 13:42 -
-
bởi theidiotcatTrong bối cảnh giá linh kiện tăng cao, hiện tại mức giá laptop đã tăng đáng kể so với thời điểm trước cơn sốt AI. Chính vì vậy để lựa chọn được một chiếc laptop đáp ứng tốt nhu cầu vừa học vừa giải trí các bạn sinh viên cần...
-
Channel: Đánh giá sản phẩm DTVN
29-06-2026, 13:33 -
-
bởi theidiotcatViệc lựa chọn một chiếc laptop gaming phù hợp với nhu cầu, ngân sách chưa bao giờ là dễ dàng. Và điều đó càng khó hơn trong năm 2026 khi mà mức giá liên tục tăng.
Nếu bạn chưa biết nên chọn một chiếc laptop gaming như thế nào...-
Channel: Đánh giá sản phẩm DTVN
26-06-2026, 10:29 -
-
bởi theidiotcatVới mức ngân sách 20 - 30 triệu đồng trong năm 2026, các bạn sinh viên và dân văn phòng có thể tìm thấy nhiều lựa chọn cao cấp, mạnh mẽ, pin “trâu”, đặc biệt là các mẫu laptop AI hỗ trợ cho học tập và làm việc.
Trong phân...-
Channel: Đánh giá sản phẩm DTVN
26-06-2026, 10:25 -
-
bởi theidiotcatDưới đây là một số mẫu laptop nổi bật trong phân khúc dưới 20 triệu giúp các bạn văn phòng, sinh viên và đặc biệt là tân sinh viên có thể dễ dàng lựa chọn được mẫu laptop phù hợp với nhu cầu và ngân sách của mình.
Thị...-
Channel: Đánh giá sản phẩm DTVN
26-06-2026, 10:07 -
-
bởi theidiotcatViệc chọn mua một bộ máy tính phục vụ cho các nhu cầu làm việc văn phòng và sử dụng cơ bản hàng ngày đang trở nên dễ dàng và tiết kiệm hơn bao giờ hết. Thay vì phải đau đầu trích ngân sách để mua cả vi xử lý lẫn card đồ họa rời...
-
Channel: Đánh giá sản phẩm DTVN
25-06-2026, 11:23 -
mình làm cũng lâu rồi...mình dùng bản 2.3.4 dùng bản cr.ack thôi...có thể search trên mạng được...
...
Comment