Menu English Ukrainian Tiếng Nga Trang Chủ

Thư viện kỹ thuật miễn phí cho những người có sở thích và chuyên gia Thư viện kỹ thuật miễn phí


ENCYCLOPEDIA VỀ ĐIỆN TỬ TRUYỀN THANH VÀ KỸ THUẬT ĐIỆN
Thư viện miễn phí / Sơ đồ của các thiết bị vô tuyến-điện tử và điện

Lập trình PIC16, PIC12 hiện đại trên PonyProg. Bách khoa toàn thư về điện tử vô tuyến và kỹ thuật điện

Thư viện kỹ thuật miễn phí

Bách khoa toàn thư về điện tử vô tuyến và kỹ thuật điện / Bộ vi điều khiển

Bình luận bài viết Bình luận bài viết

Như bạn đã biết, bộ lập trình PonyProg được thiết kế để lập trình một số loại vi điều khiển PICmicro hạn chế của Microchip (PIC12C50x PIC16F8x, PIC16F87x). Tuy nhiên, nó có thể được sử dụng để lập trình cho các thiết bị khác, bao gồm các bộ vi điều khiển mới thuộc dòng PIC12 và PIC16. Bài viết mô tả cách thực hiện việc này.

Nhiều người nghiệp dư về radio xây dựng thiết kế của họ dựa trên bộ điều khiển PIC phổ biến PIC16F84 (PIC16F84A). Tuy nhiên, thời gian không đứng yên và phạm vi vi điều khiển PICmicro (MCU) được sản xuất không ngừng mở rộng. Các MCU mới, tiên tiến hơn của dòng PIC16F và PIC12F đã xuất hiện (ví dụ PIC12F629, PIC12F675, PIC16F628, PIC16F630, PIC16F676). Chúng chứa một bộ so sánh có khả năng hoạt động với điện áp đầu vào gần bằng 10, điều này rất hấp dẫn với nguồn cung cấp một lần. ADC 16 bit có trong thành phần của chúng có độ chính xác không thua kém các vi mạch chuyên dụng, cùng với khả năng xử lý và hiển thị thông tin cao hơn, cho phép bạn tạo ra các thiết bị độc đáo với số lượng phần tử bên ngoài tối thiểu. MK mới có bộ nhớ lớn hơn, bộ hẹn giờ bổ sung, cổng giao tiếp đa năng và các cải tiến khác. Hơn nữa, giá thành của chúng thấp hơn đáng kể so với PIC84F16 và FLASH PIC630F16 rẻ hơn PIC505C14 (cả hai đều ở dạng gói 12 chân). Tổ chức bộ nhớ của PIC16Fx giống như của PIC84FXNUMX (một trang), giúp dễ dàng điều chỉnh các chương trình không yêu cầu sử dụng MCU trong các gói nhiều chân.

Nếu bạn quyết định sử dụng bộ vi điều khiển mới trong thiết kế của mình thì trước khi nghiên cứu chúng và viết chương trình, hãy suy nghĩ xem nên lập trình chúng trên cái gì. Việc mua một lập trình viên có thương hiệu với chi phí tương đương với giá của một bộ phận hệ thống máy tính là điều gần như không thể đối với những người nghiệp dư trên đài. Tuy nhiên, nhiều người trong số họ đã lắp ráp bộ lập trình PONYPROG [1]. Hãy tìm hiểu cách bạn có thể sử dụng nó để lập trình MK mới.

Tất cả các MK đều được lập trình thông qua bus ba dây. Để lập trình, cần có các tín hiệu Upp (chuyển sang chế độ lập trình), CLK (đồng bộ hóa) và DAT (dữ liệu).

Những người có sở thích không có lập trình viên có thể sử dụng một thiết bị đơn giản được lắp ráp theo sơ đồ trong Hình. 1. Nó được kết nối với cổng COM của PC; một nguồn riêng có điện áp đầu ra 5 V được sử dụng để cấp nguồn cho MK.

Lập trình PIC16, PIC12 hiện đại trên PonyProg
(bấm vào để phóng to)

Trong "Cài đặt thiết bị" chỉ ra loại lập trình viên - API JDM. Các thiết bị đầu cuối được kết nối theo bảng. Việc lập trình có thể được thực hiện trực tiếp trong thiết bị đã hoàn thiện bằng cách sử dụng nguồn điện của nó (chỉ cần loại bỏ sự lệch hướng của các chân lập trình MK bởi các thành phần sản phẩm). Điện áp cung cấp trong quá trình lập trình phải nằm trong khoảng 4,5...5,5 V (nếu cần, hãy chọn diode zener VD1).

Bảng cho thấy mục đích của các chân PIC16F84 và PIC16F628 được sử dụng trong quá trình lập trình là như nhau nên có thể lập trình trong cùng một socket của lập trình viên. Đối với các vi mạch khác, bạn sẽ phải lắp thêm ổ cắm kết nối với bộ chuyển đổi theo bảng. Thông tin chi tiết hơn về bộ điều khiển PIC có thể được tìm thấy trên trang web [2].

Các giải thích sâu hơn được đưa ra bằng cách sử dụng PIC16F628 làm ví dụ, vì nó không yêu cầu sửa đổi phần cứng đối với bộ lập trình PonyProg và có sẵn ở các cửa hàng hơn các loại khác.

Như đã lưu ý, tất cả PICmicro MK đều được lập trình thông qua ba dây (chính xác hơn là hai). Giao thức lập trình (lệnh) cũng giống nhau.

Bộ nhớ chương trình bắt đầu ở địa chỉ 0000 và kết thúc tùy thuộc vào dung lượng của nó trong một loại chip cụ thể. Điều này có nghĩa là bằng cách chọn MK phù hợp với tham số này từ danh sách PonyProg, bạn có thể ghi lại chương trình mong muốn. Trong trường hợp của chúng tôi, PIC16F871 là phù hợp. Cần lưu ý rằng dòng dưới cùng của cửa sổ PonyProg cho biết dung lượng bộ nhớ tính bằng byte và đặc tính kỹ thuật của MK thường chỉ ra số lượng từ (14 bit). Nói cách khác, người lập trình hiển thị âm lượng lớn hơn. PIC16F871 và PIC16F628 có dung lượng bộ nhớ 2048 từ. Ngoài ra, điều này có thể được kiểm tra trong tệp .Ikr của MK tương ứng (nằm trong thư mục cài đặt MPLAB) bằng cách đọc nó bằng chương trình Notepad tiêu chuẩn. Địa chỉ bộ nhớ chương trình được chỉ định như sau:

CODEPAGE NAME=vectơ START=0x0 END=0x4 ĐƯỢC BẢO VỆ (chuyển có điều kiện) CODEPAGE NAME=trang START=0x5 END=0x7FF (chuyển có điều kiện)

Lập trình PIC16, PIC12 hiện đại trên PonyProg

Ở giai đoạn này, bạn đã có thể thử ghi thông tin vào bộ nhớ chương trình. Bất kỳ tệp HEX nào không lớn hơn 2048 từ đều phù hợp cho việc này. Sau khi khởi chạy chương trình dịch vụ, kết nối thiết bị với cổng máy tính, cắm MK vào ổ cắm thích hợp, sau đó bật nguồn của bộ lập trình. Chọn PIC16F871 từ menu, tải tệp HEX đã chọn và nhấp vào nút "Viết bộ nhớ chương trình (FLASH)". Một thông báo lỗi sẽ xuất hiện thông báo cho bạn về các vấn đề với MK và có ba nút (Hình 2): “Abort” (hủy bỏ), “Thử lại” (lặp lại), “Bỏ qua” (bỏ qua). Nhấp vào cái cuối cùng ("Bỏ qua") và quá trình lập trình sẽ bắt đầu. Sau khi hoàn thành, một thông báo cho biết ghi thành công sẽ xuất hiện. Nếu lập trình viên tạo ra "Lỗi ghi", hãy kiểm tra nội dung của bộ nhớ chương trình, coi đó là lệnh tương ứng. Sự hiện diện của lỗi cho thấy rằng lập trình viên có thể đang làm việc quá nhanh (điều này xảy ra nếu hệ điều hành WINDOWS XP được cài đặt trên máy tính; với WINDOWS 98, chương trình chạy chậm hơn và ghi đáng tin cậy hơn). Nguyên nhân cũng có thể là do nhiễu (nếu dây kết nối quá dài) và trong một số trường hợp hiếm hoi là do chương trình chống vi-rút và các chương trình nền khác. Nếu mục này bị thiếu hoàn toàn thì phần cứng của lập trình viên bị lỗi hoặc chương trình được cấu hình không chính xác (trong menu).

Giai đoạn tiếp theo, quan trọng nhất là viết từ cấu hình. Địa chỉ của nó cũng có thể được tìm thấy trong tệp .Ikr của MK tương ứng. Dòng trong tập tin trông như thế này:

CODEPAGE NAME=.config START=0x2007 END=0x2007 ĐƯỢC BẢO VỆ (chuyển có điều kiện).

Từ cấu hình nằm ở địa chỉ 0x2007. Trong trường hợp của chúng tôi, PIC16F871 và PIC16F628 có địa chỉ 2007, tức là chúng thích hợp để thay thế (cần lưu ý rằng từ cấu hình cho tất cả PIC16 và PIC12F đều nằm ở địa chỉ này). Không nên đặt các bit cấu hình trực tiếp trong bộ lập trình, vì ký hiệu của chúng trên bảng lập trình cho PIC16F628 và PIC16F871 là khác nhau và có thể xảy ra lỗi, đồng thời một số bit bị chuyển sang màu xám và không thể đặt trực tiếp. Tốt hơn là bạn nên ghi lại cấu hình MK khi biên dịch chương trình. Đối với MPLAB, những dòng này có thể trông giống như thế này:

trong lude p16f628.inc> danh sách p=16f628 _config H'0242"

Giá trị '0242' được biên dịch theo mục đích của từng bit trong từ cấu hình và có thể khác trong trường hợp cụ thể của bạn. Bạn có thể tìm thấy mô tả chi tiết về tất cả các bit trên trang web [2].

Các chữ viết tắt cho các bit cấu hình có trong tệp .INC của MK tương ứng trong thư mục cài đặt MPLAB. Xem gần đúng:

BODEN TRÊN THIẾT BỊ H'3FFF'

BOEN TẮT THIẾT BỊ H'3FBF'

CP TẤT CẢ THIẾT BỊ H'03FF'

CP 75 THIẾT BỊ H'17FF'

CP 50 THIẾT BỊ H'2BFF'

CP TẮT THIẾT BỊ H'3FFF'

CP DỮ LIỆU TRÊN THIẾT BỊ H'3EFF'

DỮ LIỆU CP TẮT THIẾT BỊ H'3FFF'

PWRTE TẮT THIẾT BỊ H'3FFF'

LÒ NÉN TRÊN THIẾT BỊ H'3FF7'

WDT TRÊN THIẾT BỊ H'3FFF'

WDT TẮT THIẾT BỊ H'3FFB'

LVP TRÊN THIẾT BỊ H'3FFF'

LVP TẮT THIẾT BỊ H'3F7F'

MCLRE TRÊN THIẾT BỊ H'3FFF'

MCLRE TẮT THIẾT BỊ H'3FDF'

ER OSC CLKOUT THIẾT BỊ H'3FFF'

ER OSC NOCLKOUT THIẾT BỊ H'3FFE'

INTRC OSC CLKOUT THIẾT BỊ H'3FFD'

INTRC OSC NOCLKOUT THIẾT BỊ H'3FFC

EXTCLK OSC THIẾT BỊ H'3FEF'

LP OSC EQUI H'3FEC

XT OSC EQUI H'3FED'

HS OSC EQUI H'3FEE'

Sử dụng ký hiệu này, dòng nhập có thể trông như thế này:

__config CP_ALL & WDT TẮT & BẬT BODEN & _PWRTE_ON & _HSJ3SC &_LVP TẮT ; (chuyển khoản có điều kiện).

Bằng cách này, bạn có thể viết từ cấu hình cho bất kỳ MK nào bằng tệp .INC của nó. Điều này thuận tiện khi điều chỉnh một chương trình làm sẵn, chẳng hạn như trong trường hợp thay thế PIC16F627 bằng PIC16F627A rẻ hơn. Khi bạn đưa cấu hình vào văn bản chương trình, nó sẽ được đưa vào tệp HEX và các bit được tô bóng cũng sẽ được đặt. Sau khi bạn nhập từ cấu hình vào bộ lập trình bằng cách đọc tệp HEX của chương trình chứa nó, quá trình ghi được thực hiện theo cách thông thường, bằng cách nhập lệnh thích hợp. Tương tự, nó có thể được đọc từ MK. Bạn có thể đảm bảo rằng cấu hình được ghi bằng cách xóa bảng lập trình cấu hình lập trình viên sau khi ghi, sau đó đọc cấu hình từ MK hoặc bằng cách đọc bộ nhớ chương trình từ chip được bảo vệ đọc: trước khi ghi cấu hình, nó sẽ được đọc , nhưng sau khi ghi thì không (nếu cài đặt bảo vệ), trong trường hợp này, cấu hình cũng được đọc trong vi mạch được bảo vệ.

Không nên thiết lập các bit bảo mật trừ khi thực sự cần thiết. Thực tế là một số MK có các lệnh xóa khác nhau và bạn sẽ không thể lập trình lại chúng vì các bit bảo vệ trên PonyProg sẽ không bị xóa. Tuy nhiên, khi ghi vào một con chip không được bảo vệ trên “chương trình cơ sở” chứa trong đó, mã được ghi sẽ xóa thông tin trước đó và không cần phải xóa. Tuy nhiên, điều này không áp dụng cho PIC16F627, PIC16F628; thông tin trong đó có thể được bảo vệ mà không cần lo lắng.

Dữ liệu được ghi vào EEPROM theo cách thông thường, vì dữ liệu trong MCU PIC16F và PIC12F được đặt từ địa chỉ 2100p. Bạn cũng có thể xem nội dung này trong tệp .Ikr. Một dòng ví dụ:

CODEPAGE NAME=eedata START=0x2100 END=0x217F ĐƯỢC BẢO VỆ (chuyển có điều kiện).

Linh tinh dành cho bộ điều khiển PIC - chỉ phần cuối của vùng dữ liệu (do các khối lượng khác nhau): đối với PIC16F628 - 128, đối với PIC16F871 - 64 byte, nhưng nếu khối lượng bạn cần cho công việc không vượt quá kích thước của EEPROM của bộ thay thế đã chọn chip (dành cho PIC16F871 - 64 byte), sau đó bạn có thể lập trình mà không cần chuyển loại MK trong menu: đơn giản là bộ nhớ dư thừa của PIC16F628 sẽ không được sử dụng. Nếu bạn cần ghi âm lượng lớn hơn, thì trong menu lập trình viên, bạn nên thay thế loại MK có dung lượng bộ nhớ tương tự PIC16F628 (trong trường hợp của chúng tôi là PIC16F874 với EEPROM 128 byte) và ghi theo cách thông thường. Bạn có thể thay đổi loại MK trong menu ở bất kỳ giai đoạn lập trình nào.

Cần lưu ý rằng mặc dù PIC16F874 có bộ nhớ chương trình lớn gấp đôi PIC16F628 nhưng bạn có thể ghi thông tin vào nó bằng cách cài đặt PIC16F874 và thậm chí PIC16F877 (16K) trong menu, tuy nhiên khi kiểm tra ghi, lập trình viên sẽ hiển thị một thông báo lỗi. Thực tế là khi đọc một phần bộ nhớ không được triển khai trong PIC16F628, MK sẽ tạo ra thông tin được ghi ở địa chỉ thấp hơn (các bit địa chỉ cao bị bỏ qua), tức là bộ nhớ chương trình sẽ được đọc hai lần (trong PIC16F877 - bốn lần). Nói cách khác, đây không phải là lỗi trong chương trình mà là việc đọc lại bộ nhớ; chương trình được ghi bình thường.

Văn chương

  1. Dolgiy A. Phát triển và gỡ lỗi thiết bị trên MK. - Đài phát thanh, 2001, số 6, tr. 24-26: Số 7, tr. 19-21.

Tác giả: A. Sizov, Ivanovo

Xem các bài viết khác razdela Bộ vi điều khiển.

Đọc và viết hữu ích bình luận về bài viết này.

<< Quay lại

Tin tức khoa học công nghệ, điện tử mới nhất:

Máy tỉa hoa trong vườn 02.05.2024

Trong nền nông nghiệp hiện đại, tiến bộ công nghệ đang phát triển nhằm nâng cao hiệu quả của quá trình chăm sóc cây trồng. Máy tỉa thưa hoa Florix cải tiến đã được giới thiệu tại Ý, được thiết kế để tối ưu hóa giai đoạn thu hoạch. Công cụ này được trang bị cánh tay di động, cho phép nó dễ dàng thích ứng với nhu cầu của khu vườn. Người vận hành có thể điều chỉnh tốc độ của các dây mỏng bằng cách điều khiển chúng từ cabin máy kéo bằng cần điều khiển. Cách tiếp cận này làm tăng đáng kể hiệu quả của quá trình tỉa thưa hoa, mang lại khả năng điều chỉnh riêng cho từng điều kiện cụ thể của khu vườn, cũng như sự đa dạng và loại trái cây được trồng trong đó. Sau hai năm thử nghiệm máy Florix trên nhiều loại trái cây khác nhau, kết quả rất đáng khích lệ. Những nông dân như Filiberto Montanari, người đã sử dụng máy Florix trong vài năm, đã báo cáo rằng thời gian và công sức cần thiết để tỉa hoa đã giảm đáng kể. ... >>

Kính hiển vi hồng ngoại tiên tiến 02.05.2024

Kính hiển vi đóng vai trò quan trọng trong nghiên cứu khoa học, cho phép các nhà khoa học đi sâu vào các cấu trúc và quá trình mà mắt thường không nhìn thấy được. Tuy nhiên, các phương pháp kính hiển vi khác nhau đều có những hạn chế, trong đó có hạn chế về độ phân giải khi sử dụng dải hồng ngoại. Nhưng những thành tựu mới nhất của các nhà nghiên cứu Nhật Bản tại Đại học Tokyo đã mở ra những triển vọng mới cho việc nghiên cứu thế giới vi mô. Các nhà khoa học từ Đại học Tokyo vừa công bố một loại kính hiển vi mới sẽ cách mạng hóa khả năng của kính hiển vi hồng ngoại. Thiết bị tiên tiến này cho phép bạn nhìn thấy cấu trúc bên trong của vi khuẩn sống với độ rõ nét đáng kinh ngạc ở quy mô nanomet. Thông thường, kính hiển vi hồng ngoại trung bị hạn chế bởi độ phân giải thấp, nhưng sự phát triển mới nhất của các nhà nghiên cứu Nhật Bản đã khắc phục được những hạn chế này. Theo các nhà khoa học, kính hiển vi được phát triển cho phép tạo ra hình ảnh có độ phân giải lên tới 120 nanomet, cao gấp 30 lần độ phân giải của kính hiển vi truyền thống. ... >>

Bẫy không khí cho côn trùng 01.05.2024

Nông nghiệp là một trong những lĩnh vực quan trọng của nền kinh tế và kiểm soát dịch hại là một phần không thể thiếu trong quá trình này. Một nhóm các nhà khoa học từ Viện nghiên cứu khoai tây trung tâm-Hội đồng nghiên cứu nông nghiệp Ấn Độ (ICAR-CPRI), Shimla, đã đưa ra một giải pháp sáng tạo cho vấn đề này - bẫy không khí côn trùng chạy bằng năng lượng gió. Thiết bị này giải quyết những thiếu sót của các phương pháp kiểm soát sinh vật gây hại truyền thống bằng cách cung cấp dữ liệu về số lượng côn trùng theo thời gian thực. Bẫy được cung cấp năng lượng hoàn toàn bằng năng lượng gió, khiến nó trở thành một giải pháp thân thiện với môi trường và không cần điện. Thiết kế độc đáo của nó cho phép giám sát cả côn trùng có hại và có ích, cung cấp cái nhìn tổng quan đầy đủ về quần thể ở bất kỳ khu vực nông nghiệp nào. Kapil cho biết: “Bằng cách đánh giá các loài gây hại mục tiêu vào đúng thời điểm, chúng tôi có thể thực hiện các biện pháp cần thiết để kiểm soát cả sâu bệnh và dịch bệnh”. ... >>

Tin tức ngẫu nhiên từ Kho lưu trữ

Cấu trúc của pentaquark đã được nghiên cứu 16.06.2019

Các hạt hạ nguyên tử kỳ lạ được gọi là pentaquark chứa năm hạt nhỏ hơn - quark và phản quark. Nhưng những hạt này không chỉ là sự tích tụ của năm thành phần. Pentaquark là sự kết tụ giống như phân tử của một cặp hạt nhỏ hơn, một trong số đó bao gồm ba hạt quark và hạt kia gồm một hạt quark và một hạt phản quark.

Được phát hiện lần đầu tiên vào năm 2015 tại Máy va chạm Hadron Lớn ở Geneva, các pentaquark không giống bất cứ thứ gì trước đây. Tất cả các hạt đã biết trước đây có chứa quark đều là baryon — các hạt như proton và neutron chứa ba quark — hoặc meson, được cấu tạo bởi một quark và một phản quark. Nhưng pentaquark, với năm hạt thành phần của chúng, không phù hợp với bất kỳ loại nào trong số này.

Nhà vật lý hạt Tomasz Skwarnicki thuộc Đại học Syracuse ở New York, đồng tác giả của nghiên cứu cho biết: “Không có hình ảnh rõ ràng về cách các pentaquark được tạo ra.

Một số nhà khoa học tin rằng năm thành phần có thể được kết hợp ngang nhau. Nhưng các phép đo chi tiết cho thấy pentaquark được tạo ra từ hai hạt đã biết, baryon và meson, được dán lại với nhau. Khám phá này làm cho các hạt ít kỳ lạ hơn một chút so với dự định.

Tuy nhiên, kết quả cho thấy những khía cạnh mới của vật lý hạt cơ bản: trước đó, người ta không rõ rằng baryon và meson có thể kết hợp với nhau hay không.

Tin tức thú vị khác:

▪ Kính chắn gió sương mù

▪ Băng trên một tiểu hành tinh

▪ hydro kim loại

▪ Xe đưa đón hoàn toàn tự động

▪ Nhiên liệu từ quang hợp

Nguồn cấp tin tức khoa học và công nghệ, điện tử mới

 

Tài liệu thú vị của Thư viện kỹ thuật miễn phí:

▪ phần trang web Điều khiển âm lượng và âm lượng. Lựa chọn bài viết

▪ bài báo Lấy nó, lấy nó, hoặc thậm chí làm bẩn móng vuốt của bạn! biểu hiện phổ biến

▪ bài viết Thủ phạm vụ tai nạn bị kiện ở nước nào vì nạn nhân sau vụ tai nạn trở thành người đồng tính? đáp án chi tiết

▪ Điều Medlar bình thường. Truyền thuyết, canh tác, phương pháp áp dụng

▪ bài viết Thiết bị SRT. Bách khoa toàn thư về điện tử vô tuyến và kỹ thuật điện

▪ Bài viết của Philadin. Bách khoa toàn thư về điện tử vô tuyến và kỹ thuật điện

Để lại bình luận của bạn về bài viết này:

Имя:


Email (tùy chọn):


bình luận:





Tất cả các ngôn ngữ của trang này

Trang chủ | Thư viện | bài viết | Sơ đồ trang web | Đánh giá trang web

www.diagram.com.ua

www.diagram.com.ua
2000-2024