Lập trình lpt trong mạch cho avr. Dành cho người mới bắt đầu Lập trình cổng song song đơn giản (LPT)


Phần sụn của vi điều khiển là một mục nhập vào bộ nhớ vĩnh viễn chương trình nhất định, là mã trong hệ thống số thập lục phân (tệp có phần mở rộng hex). Firmware được cài đặt bằng cách sử dụng thiết bị đặc biệt- lập trình viên. Họ khác nhau ở cách họ kết nối với máy tính cá nhân, ví dụ thông qua giao diện USB, LTP, COM.

Bộ vi điều khiển AVR có năm tiếp điểm để lập trình: MOSI - dùng để nhận dữ liệu; MOSO - để xuất dữ liệu; SCK - đầu ra đồng hồ; RESET đơn giản là reset và nối dây chung.


Chúng ta hãy kết nối năm tiếp điểm này thông qua các điện trở giới hạn dòng điện với một điểm song song cổng LPT máy tính và có được bộ lập trình LPT đơn giản nhất cho bộ vi điều khiển thuộc dòng AVR.

Khi lắp ráp mạch, cáp phải được che chắn; cáp giao diện cũ của máy in đặc biệt tốt cho mục đích này. Nếu bạn sử dụng cáp thông thường, độ dài của cáp phải càng ngắn càng tốt và đôi khi xảy ra lỗi lập trình. Nhưng nhược điểm chính của sơ đồ này là nếu cài đặt kém hoặc có lỗi kết nối thì cổng LPT của máy tính có thể bị hỏng.

Mạch lập trình USB cho bộ vi điều khiển AVR được chế tạo trên bộ vi điều khiển Atmega8. Mạch này rất đáng tin cậy và có một mạch rất tính năng quan trọng, cho phép bạn khôi phục bộ vi điều khiển có cầu chì được cài đặt sai.


Để flash bộ lập trình vi điều khiển Atmega8, bạn phải sử dụng bất kỳ sơ đồ nào được thảo luận ở trên cho LPT.

Bạn có thể tự làm một bảng mạch in bằng phương pháp phổ biến đối với những người nghiệp dư trên đài và bản vẽ bảng mạch in ở định dạng đã có sẵn trong kho lưu trữ với phần sụn và trình điều khiển.

Tốt nhất chúng ta nên có một USB lập trình viên như vậy


Tất cả những gì còn lại là ghi chương trình vào bộ nhớ của vi điều khiển; để làm được điều này, tốt nhất là sử dụng các tiện ích Uniprof và Code Vision AVR.

Một chương trình được thiết kế cho môi trường phát triển phần mềm tích hợp cho bộ vi điều khiển AVR. Các tính năng chính của CodeVisionAVR là nó nhẹ và rất dễ hiểu. tự học và cũng hỗ trợ tất cả các bộ vi điều khiển AVR hiện có.

Nếu bạn quyết định sử dụng chương trình Uniprof, bạn phải đặt các cầu chì sau.


Sau khi hoàn thành phần sụn của bộ vi điều khiển Atmega8, hãy chuyển công tắc bật tắt SA2 sang NORM và kết nối bộ lập trình với USB. Máy tính phải tìm thấy thiết bị. Sau đó, hãy nhớ cài đặt trình điều khiển từ kho lưu trữ. Sau khi quá trình cài đặt trình điều khiển cho lập trình viên hoàn tất, nó hoàn toàn sẵn sàng để sử dụng.

Lập trình viên có khả năng làm việc với các shell sau: AVR Prog, AVR Studio, ChipBlasterAVR và một trong những tiện ích nhất là Code Vision AVR.

Đây là sơ đồ đơn giản nhất và đồng thời là lập trình viên làm việc 100% cho Bộ vi điều khiển AVR. Sơ đồ này được phần mềm xác định là ATMEL “STK200/STK300”, cho phép nó được sử dụng cùng với phần mềm hỗ trợ loại này lập trình viên, chẳng hạn như CodeVisionAVR, Pony-Prog hoặc AVReal.

Mạch lập trình viên.

Cá nhân tôi đã thử nghiệm lập trình viên này với CodeVisionAVR.

Đây là một lập trình viên phức tạp hơn cho Lập trình AVR vi điều khiển của ATMEL. Nó sử dụng chip đệm để bảo vệ bộ vi điều khiển khỏi bị hư hại. Bộ chuyển đổi này tương tự kết nối với cổng LPT của máy tính.

Thông số kỹ thuật của lập trình viên:
Cổng kết nối: LPT
Điện áp cung cấp: 5V
Mức tiêu thụ hiện tại: 10 mA
Mạch lập trình:

Chú ý! Nếu MK có thể lập trình sẽ được cấp nguồn nguồn bên ngoài Nguồn điện, bạn phải kết nối cực âm của máy tính (cổng LPT 25 chân) với cực âm của vi điều khiển.

Bộ lập trình và MK được cấp nguồn bằng PC, từ đó đảm bảo cung cấp điện ổn định cho bộ lập trình và MK lập trình. Chiều dài cáp kết nối không được vượt quá 20 cm Thiết bị được lắp ráp trên chip đệm U1 SN74HC244, hiện nay khá dễ tiếp cận. Bộ lập trình được kết nối với các chân MOSI, MISO, XTAL1, RESET, SCK, VCC, GND của bộ vi điều khiển khả trình. Bộ chuyển đổi được lắp ráp đúng cách không yêu cầu cấu hình.

Phần mềm vi điều khiển.

Để flash bộ vi điều khiển với bộ chuyển đổi này, bạn cần sử dụng phần mềm tương thích với bộ lập trình ATMEL “STK200/STK300”, ví dụ Pony-Prog hoặc AVReal. Nhưng chúng tôi sử dụng một lập trình viên được tích hợp vào CodeVisionAVR. Vâng, từ lời nói đến việc làm...

Đầu tiên bạn cần có CodeVisionAVR. Tôi nghĩ sẽ không có vấn đề gì với việc cài đặt và khởi chạy...

Vì thế. Khởi chạy CodeVision, sau đó đi tới menu Cài đặt > Trình lập trình trong cửa sổ xuất hiện, chọn trình lập trình Kanda Systems STK200+/300 và số cổng LPT. Thông thường đây là LPT1: 378h.

Sau đó vào Công cụ > Lập trình viên chip Trong cửa sổ xuất hiện, vào menu Tệp > Tải FLASH. Chọn loại tệp Tệp Intel HEX (*.hex) sau đó chỉ định đường dẫn đến tệp chương trình cơ sở.

Nếu bạn muốn sử dụng bộ cộng hưởng thạch anh bên ngoài trong thiết bị thì bạn sẽ phải lập trình cầu chì. Ví dụ: nếu bạn cần thạch anh từ 3 đến 8 MHz, thì cầu chì phải được lập trình như thế này:

Để flash MK và cầu chì, bạn cần nhấp vào nút Lập trình TẤT CẢ.


26.04.2014
sPlan - công cụ tiện dụng dùng để vẽ mạch điện. Có một đơn giản và trực quan giao diện rõ ràng. Chương trình bao gồm...

Một chương trình đọc pdf Foxit Reader rất tiện lợi
26.04.2014
Foxit Reader - Chương trình nhỏ gọn và nhanh chóng dành cho Trình đọc PDF các tập tin. Có thể phục vụ như là một thay thế cho phổ biến Trình xem PDF- Chương trình đọc file PDF trên máy tính....


22.04.2014
Proteus VSM là một chương trình mô phỏng thiết bị vi điều khiển. Hỗ trợ MK: PIC, 8051, AVR, HC11, ARM7/LPC2000 và các bộ xử lý thông dụng khác....


01.04.2014
Địa điểm dự án mà trong một khoảng thời gian dàiđang ở trong tình trạng tê liệt, anh ấy lại làm việc với sức sống mới, với những bài báo mới và với...

Proteus 7.7 SP2 + Crack v1.0.2 + RUS
22.04.2014
Proteus VSM là một chương trình mô phỏng thiết bị vi điều khiển. Hỗ trợ MK: PIC, 8051, AVR, HC11, ARM7/LPC2000 và các bộ xử lý thông dụng khác....

Splan 7.0.0.9 Rus + Portable + Viewer Final
26.04.2014
sPlan là một công cụ tiện lợi để vẽ các mạch điện tử. Nó có một giao diện đơn giản và trực quan. Chương trình bao gồm...

Trạm hàn kỹ thuật số DIY (ATmega8, C)
27.05.2012
Thành phần: ATmega8, LM358, IRFZ44, 7805, cầu nối, 13 điện trở, 1 chiết áp, 2 điện cực, 4 tụ điện, LED 7 đoạn 3 chữ số...

Máy đo tốc độ trên vi điều khiển AVR (ATtiny2313, C)
13.01.2010
Thiết bị này là một máy đo tốc độ tốt; giới hạn đo của nó là 100 - 9990 vòng/phút. Độ chính xác đo - ± 3 vòng/phút....

Bài viết này - hướng dẫn chi tiết cách lập trình bộ vi điều khiển AVR bằng bộ lập trình LPT và chương trình UniProf.

Hãy nhớ đọc nó trước, nhiều điều sẽ trở nên rõ ràng hơn.
Tải xuống chương trình Đại học.
- Lập trình viên AVR. Chúng tôi xem avr.nikolaew.org

Nhấp vào “OK” (lần sau bạn sẽ không phải cài đặt nó - chương trình sẽ ghi nhớ các cài đặt). Thế là xong - lập trình viên đã được "đăng ký".

2 Chúng tôi kết nối lập trình viên với cổng LPT.

3 Chúng tôi kết nối bộ lập trình với bảng vi điều khiển, cấp nguồn cho vi điều khiển.

4 Khởi chạy UniProf (nếu nó chưa chạy), chọn cổng LPT trong trường này. Nó sẽ xuất hiện với màu xanh lam. Để kiểm tra độ tin cậy của kết nối, hãy chọc vài lần vào . Nếu nó xuất hiện ở bất kỳ giai đoạn nào thì kết nối không đáng tin cậy - hãy đánh dấu và kiểm tra lại.

5 Nhấp vào nút tải xuống và chọn cái bạn cần. Các con số sẽ xuất hiện trong cửa sổ - chương trình của chúng tôi.


tái bút Bạn có cần flash EEPROM ngoài Flash không?
Thật đơn giản! Đầu tiên, hãy đánh dấu vào ô EEPROM - cửa sổ EEPROM sẽ xuất hiện (phải đánh dấu vào ô “phanh” trước đó!). Tiếp theo, mở file HEX, chương trình sẽ tự động tìm và nạp file EEP (cả cửa sổ PROGRAM và EEPROM sẽ chứa đầy dữ liệu). Nếu bản thân Uniprof chưa xác định tệp EEP, hộp thoại chọn tệp sẽ mở ra. Tiếp theo chúng ta tiến hành như mô tả ở trên. Khi bạn nhấn nút “Prog”, cả Flash và EEPROM đều được lập trình. Đó là tất cả!

(Đã truy cập 20.158 lần, 6 lượt truy cập hôm nay)

Mục: Thẻ: ,

bài chuyển hướng

027-UniProf-lập trình AVR qua cổng LPT.: 47 bình luận

  1. alexandershahbazov

    Vì lý do nào đó, nó không hoạt động với mạch thế giới SN74HC244N, nhưng nó hoạt động với 5 dây.
    Viết “MK đã không trả lời…”. Chỉ có nút “Đọc” hoạt động. Và phải mất một thời gian rất dài.
    Đúng, bảng gỡ lỗi của tôi là ATmega8.
    Với cả hai lập trình viên, mọi thứ diễn ra suôn sẻ trên CodeVisionAVR và
    trung bình 5,8.

    Tôi nhắc lại rằng nó hoạt động với 5 dây.


  2. GetChiper Đăng bởi

    Bạn đã thử đánh dấu vào ô “Phanh” chưa?
    Không cần phải gắn liền với UniProf. Chương trình có những nhược điểm nhất định. Ưu điểm chính của nó là dễ dàng bắt đầu làm việc, ngay cả khi bạn chưa từng cài đặt bộ điều khiển trước đây. Chắc chắn, bạn sẽ phát triển về mặt chuyên môn - nếu bạn thay đổi lập trình viên, các chương trình sẽ thay đổi.
    Avrdude - rất thay thế tốt- sử dụng nó!

  3. alexandershahbazov

    “027-UniProf – lập trình AVR qua cổng LPT” Tôi đọc kỹ,
    Tôi đã chọn hộp kiểm “Phanh”.
    Tôi đã thử avrdude 5.8 đồng thời với UniProf và PonyProg v207c.
    Dòng lệnh không bình thường đối với tôi, mặc dù tôi đã thắp sáng đèn LED đầu tiên của mình bằng avrdude trên Linux-e RHEL 4 AS.

  4. ec

    aha, nó không hoạt động với bộ đệm, rõ ràng là do Uniprof không thân thiện với STK, trong đó các chân 3-11 và 2-12 được kết nối với đầu nối LPT.
    Nhưng Ponyprog có một tệp tự động hóa - một điều tuyệt vời nếu bạn không muốn nghĩ đến việc đặt cầu chì nào ở đâu và nhanh chóng nháy chúng.


  5. GetChiper Đăng bởi

    Chà, đó là một điểm cộng nữa cho Uniprof. Nhưng nếu tôi là tác giả của chương trình, tôi sẽ nghiên cứu khả năng chống ồn. Mặc dù vậy, nếu tốc độ không quá quan trọng thì chế độ “phanh” sẽ giải quyết được mọi vấn đề.

  6. ankar

    Nhưng tôi chỉ thích nó vì bạn không cần phải chọn một viên pha lê. Nếu bạn không nhìn thấy nó, hãy tìm một cái jamb. Bạn viết nó ra bằng ponka, và chỉ khi đó bạn mới nhận ra rằng mình đã lãng phí thời gian. Không, nếu bạn cần làm việc với nhiều bộ xử lý, thì tất nhiên, bạn sẽ sử dụng bộ xử lý khác nhanh hơn. Và nếu có 1 hoặc 5 miếng thì đối với tôi Unka (cảm ơn Nikolaev) là vừa phải. Nhân tiện, tôi chưa bao giờ lắp “phanh” trên Athlone XP3 2.2 giga của mình. Cáp LPT dài 1,5 mét. Không có bất kỳ chuông và còi.

  7. Nikolai

    Mình đã flash thành công ATmegu8 qua LPT nhưng không flash được lần thứ 2, chương trình báo “MK không phản hồi”. Xin vui lòng cho tôi biết những gì cần phải làm để flash nó lần thứ hai! Tôi không nhập nút đặt lại trên bảng.


  8. GetChiper Đăng bởi

    Bạn đã may cầu chì chưa?

  9. Nikolai

    Tôi đã khâu cầu chì theo hướng dẫn. Chỗ nào tôi cũng nhấn Đọc rồi Viết. Tôi không tự mình thay đổi các hộp kiểm. Bộ điều khiển hoạt động, đèn LED nhấp nháy theo hình lục giác được khâu nhưng chương trình không tìm thấy.

  10. Nikolai

    Vấn đề đã được giải quyết! Cầu chì vẫn ổn. Vấn đề là chất lượng hàn kém, MOSI trên bo mạch bị bong ra. Hàn kỹ và chậm 🙂 !!!


  11. GetChiper Đăng bởi

    Hãy lắng nghe Nikolai - anh ấy nói lên suy nghĩ của mình! 🙂

  12. NikAndrew

    Và khi nào bạn kê đơn fiyuzas được đánh dấu bằng 0 hoặc 1?

  13. NikAndrew

    mọi thứ đều được tìm ra 0 không có dấu kiểm, 1 dấu kiểm)

  14. zhenya1995

    Xin chào, tôi có một lập trình viên 5 dây, tôi cũng không có cổng LPT tiêu chuẩn, tôi đã mua nó cho máy tính của mình và cổng này có địa chỉ khác (C880). Vui lòng cho tôi biết chương trình mà tôi có thể đặt chính xác cổng này. địa chỉ hoặc cách khác để lập trình nó?


  15. GetChiper Đăng bởi

    Windows không nhìn thấy nó à?

  16. ankar
  17. Greider

    Và chương trình ở cuối phần sụn sẽ đưa ra một số loại xác nhận, cho biết mọi thứ đã thành công?
    Và có cần thiết phải nháy cầu chì nếu giá trị mặc định của chúng đủ không?


  18. GetChiper Đăng bởi

Các mạch lập trình sẵn có có thể được chia thành hai loại: những mạch được kết nối với cổng LPT của máy tính và những mạch được kết nối với cổng COM y, và phép chia này rất có điều kiện. Ưu điểm của bộ lập trình LPT là tính đơn giản của nó: trong trường hợp đơn giản nhất, nó trông giống như một số dây kết nối trực tiếp các chân của cổng LPT và bộ vi điều khiển khả trình; một mạch phức tạp hơn là một trình điều khiển bus qua đó máy tính giao tiếp với bộ vi điều khiển. Bất chấp những thiếu sót của kế hoạch đầu tiên (tại máy tính khác nhau nó hoạt động khác do sự thay đổi về đặc tính của vi mạch cổng LPT, nhiễu trong cáp, nhu cầu ngắt kết nối bộ lập trình khỏi vi mạch lập trình sau khi lập trình) nó có thể hữu ích nếu bạn cần lập trình một hoặc hai vi mạch.

Tại công việc lâu dài với vi điều khiển bạn nên sử dụng nhiều hơn mạch phức tạp. Trình điều khiển bus cho phép bạn không ngắt kết nối bộ lập trình khỏi bộ vi điều khiển sau khi lập trình, bởi vì chương trình chuyển kết quả đầu ra của nó sang trạng thái Z sau khi hoàn thành công việc. Tuy nhiên, các lập trình viên kết nối với cổng LPT cũng có nhược điểm. Điều quan trọng nhất trong số đó là lập trình viên thường chiếm cổng duy nhất có sẵn trên máy tính, hơn nữa, trong hầu hết các hệ thống, máy in chiếm giữ và bạn phải mua một thẻ đa năng hoặc máy in mới, hoặc liên tục chuyển đổi máy in và lập trình viên, điều này không thuận tiện lắm. Mạch cổng COM không có nhược điểm này. Ngoài ra, giống như trường hợp của các lập trình viên LPT, có mạch đơn giản và phức tạp hơn. Trong trường hợp đơn giản nhất, mạch biểu thị bộ chuyển đổi mức RS232 sang TTL và ngược lại cho tín hiệu riêng lẻ cần thiết cho ISP (cổng COM có ba đường vào và năm đường ra, lập trình IS yêu cầu ba đường ra (SCK, MOSI, Reset) và một đường vào (MISO)). Mạch của bộ lập trình phức tạp hơn trên cổng COM bao gồm chip giao diện RS-232 và bộ vi điều khiển chuyển đổi các lệnh chương trình trên PC thành các lệnh mà chip lập trình có thể hiểu được. Ngoài ra, thiết kế mạch này cho phép bạn tùy chỉnh mạch gần như không giới hạn - bạn có thể cài đặt bất kỳ số lượng chỉ báo nào để chỉ chế độ lập trình, bạn có thể kết nối vi điều khiển với RAM, để chương trình dành cho vi mạch lập trình được viết lại lần đầu tiên trong RAM, và sau đó, bất kể hoạt động của PC, nó được viết lại thành một vi mạch có thể lập trình, bạn cũng có thể tạo một lập trình viên với một ổ cắm chung cho tất cả các vi mạch có thể lập trình - tất cả phụ thuộc vào chương trình của vi điều khiển và trí tưởng tượng của người sản xuất.

Các lập trình viên cũng có thể được chia theo loại kết nối với vi mạch lập trình: nó được cắm vào ổ cắm của lập trình viên hoặc việc lập trình được thực hiện trong mạch (sử dụng đầu nối đặc biệt do nhà phát triển thiết bị cung cấp). Kiểu kết nối cuối cùng rất tiện lợi nhưng không phải vi điều khiển nào cũng hỗ trợ chế độ lập trình này, hơn nữa, trong quá trình lập trình trong mạch không thể lập trình một số bit cấu hình và bạn nên sử dụng kiểu kết nối này; lập trình viên song song. Hơn nữa, hầu hết tất cả các Atmel MK đều hỗ trợ chế độ ISP công việc hàng ngày Với bộ vi điều khiển, một bộ lập trình viên tích hợp là khá đủ.

Mạch và bo mạch của phiên bản lập trình viên tự chế được hiển thị bên dưới. Bộ lập trình được thiết kế có cấu trúc trên một bảng mạch in nhỏ, được kết nối trực tiếp với cổng COM.

Đối với những người mới bắt đầu, câu hỏi đặt ra là “chúng ta sẽ sử dụng cái gì để flash bộ điều khiển của mình?” gần như đứng dậy ngay lập tức. Vấn đề này có thể được giải quyết theo hai cách - chúng tôi mua một lập trình viên nối tiếp hoặc tự xây dựng. Đương nhiên, không nên mua bất kỳ bộ lập trình nối tiếp nào ở giai đoạn đầu làm quen với bộ vi điều khiển. nhất giải pháp đơn giản sẽ có cái gọi là lập trình viên “năm dây”. Tùy chọn này khá phù hợp để sử dụng một lần, nhưng có một mối nguy hiểm lớn là sớm hay muộn cổng LPT trên máy tính của bạn sẽ bị cháy. Với tư cách là ngân sách và lựa chọn an toàn lập trình viên cho cổng song song chúng tôi sử dụng một chương trình tiên tiến hơn.

Giới thiệu một trình lập trình cổng song song đơn giản và an toàn. Mạch lập trình viên khá phổ biến với nhiều biến thể khác nhau và dựa trên việc sử dụng chip đệm 74HC 244N. Bộ đệm giữ cho cổng máy in của bạn an toàn và hoạt động tốt. Ngoài ra, một điện trở được bao gồm trong mạch, mục đích của nó là để bảo vệ chống tĩnh điện.

Bộ lập trình tương thích với Atmel STK 200/300 và được hỗ trợ bởi nhiều trình biên dịch phổ biến. Toàn bộ bộ linh kiện nhỏ để lắp ráp khá phổ biến và sẽ không gây khó khăn gì khi mua. Bảng mạch inđược thực hiện trong một phiên bản một mặt với một số nút nhảy.

Để kết nối lập trình viên với máy tính, thuận tiện sử dụng cáp mở rộng cổng LPT.

Lược đồ ở định dạng sPlan 6.0 và bố trí bảng ở định dạng Bố cục nước rút Bạn có thể tải xuống 4.0 theo LUT bên dưới.