Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

PIC16F877A based 5V/20MHz development board and PIC programmer

License

NotificationsYou must be signed in to change notification settings

orhun/Picasso

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

54 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

PIC16F877A based 5V/20MHz development board and PIC programmer

[!] This is a discontinued project. [2016]Documents are published in order to help people that want to create similar projects or think of new ideas.

Idea

Programming Microchip's PIC (peripheral interface controller)'s and preparingelectronic circuit board takes time and also inconvenient in circuit testing process.In other words, using the appropriate PIC programmer and creating the proper circuit board according todesired PIC's datasheet is not practical for situations that needs quick actions like prototyping.In addition to that there is platforms likeArduino, so PIC is not preferableexcept embedded applications.

Therefore, idea behind this project is creating a development board/prototyping platform using PIC.

How?

Sprut is a project that aims to produce PIC programmer hardware withserial, parallel and USB techniques.(seeBrenner)Sprut Brenner is a preferred and common programmer board for universal PIC applications.

Brenner board that I was using:

sprut brenner

There is a 40 pin programmer on board for supporting most of the PIC's. The board itself uses PIC18F2550(seedatasheet) for communicationwith software.

PIC16F877A (seedatasheet) is a 40-pin microcontrollerwhich is used frequently on PIC domain. (It has 256 bytes of EEPROM, 2 PWM 10-bit, ICD etc.)This features of 877A was the main reason for my decision to use this microcontroller in this project.

pic16f877a

In order to load your program to PIC (which is calledflashing hex file) you have to use a software calledUS-Burn.US-Burn also supports various features such as flashing bootloaders, changing PIC configurations and disassembler.It has Windows and Linux support.

usburnGet US-Burn here.

Basically if we replace the 40 pin programmer with 877A (or another PIC), put pins in order (like Arduino) andwrite a custom IDE with flashing features, we will have a 5V - 20MHz 877A-based development card. I'd like to callitPICasso.

v0.1

v0.1

Purpose of this version is seeing how easily can I use 877A's pins with the board above.

● PIC16F877A● 7805● 1K & 220● LED● 4MHz crystal osc.● 2 x 22pF

v0.2

v0.2

This version can be considered as the outline of the Picasso project's main idea.18F2550 and 16F877A used together in this board with custom pins next to 877A due to testing our thesis.Eventually, F2550 which is responsible for USB communication can be used with another microcontroller on thesame board and this version is open to any developments on the electronics (PCB) and the software side.

Here is the steps that followed for preparing this board:

  • PCB

picasso_pcb_v0.2

EAGLE Project |PCB

  • Circuit Part List

Same as Sprut's Brenner except PIC16F77A, 20MHz osc., 22pF's, pins and couple of LED's.So here is the c/p part list:

Part     ValueReicheltConrad===================================================C1       220nF                 Z5U-2,5 220nC2, C3   22p                   Kerko 22pC4       10µF                  rad10/100C5       47µF                  rad47/35C6, C7   10nF                  X7R-2,5 10nC8       100nF                 Z5U-5 100nC9, C10  220nF                 Z5U-2,5 220nD1 D2    BAT43                 BAT 43D3       BZX97-3,3             ZF 3,3IC1      PIC18F2550SP          PIC18F2550-I/SP 28-polige IC-Fassung  GS 28P-SIC2      40-poliger Testsockel TEX 40L1       680µH                 SMCC 680µL2       10µH                  SMCC 10µLED1     grün                  LED5mm2MAgnLED2     gelb                  LED5mm2MAgeQ1       20 MHz                20-HC49U-SQ2,Q3,Q5 BC338-25              BC338-25Q4,Q6    BC328-25              BC328-25R1       1k                    1/4W 1KR2,R3,R6 10 k                  1/4W 10K  R4       4k7                   1/4W 4,7KR5       2k2                   1/4W 2,2KR7,R13   10k                   1/4W 10KR8,R12   100k                  1/4W 100KR9..R11  10k                   1/4W 10KR14      0 (Drahtbrücke)R15      1 k                   1/4W 1KR16      330                   1/4W 330SV1      ICSP                  BL 1X10G 2,54X2       USB-B-H               USB BWJP1      Jumper                Jumper 2,54 RT

Brenner Circuit andb8p5_partlist.txt might be helpful.

  • After preparing the circuit, there is not much left to do. We have to flash the bootloader and firmware toPIC18F2550 to use the board with US-Burn software.
    To achieve this, a PIC programmer is required due to the need of bootloader flashing.

  • Flash theboot_0_20mhz.hex to the 18F2550after US-Burn detected the PIC.

  • After flashing the bootloader, put 18F2550 in your circuit and connect it's USB to your computer. Make sure everything is working with USB and circuit. (Check if any smoke coming out)

  • Start the US-Burn software. It will redirect you to firmware update section if everything goes right for you.

firmware_update

  • Select theb8_fw16.hex and upload new firmware.

  • Reset the programmer. In this point you might have to make some calibrations.So seeb8_calibration_en.pdf

  • Finally put PIC16F877A in place and you are ready to go. You can flash your program (hex) into PIC and use it's pinseasily just by connecting the USB.

v0.5

v0.5

Some circuit updates were made with this version.

  • PIC16F877A placed horizontally.
  • All pins gathered in one place. Required labels added.

v0.5_pins

v0.5_2

  • PCB

picasso_pcb_v0.5

EAGLE Project |PCB

  • Circuit Part List

Same components with v0.2

  • Instructions

Same installation/configuration procedure with v0.2

v1.0

v1.0_1

Circuit board improved and new featured added with this version.

  • ICSP (In-Circuit Serial Programming) pins added for PIC16F877A.
  • 5V input added to circuit with 7805 regulator.
  • Some component's including LEDs position changed.

v1.0_2

  • PCB

picasso_pcb_v1.0

EAGLE Project |PCB

Components and instructions are same with v0.5

Missing Features

  • There is no custom IDE or flashing software for Picasso. (yet?) So you have to use a third-party softwarelike MikroC to compile your code (create hex) & flash to PIC.

  • Picasso uses Sprut Brenner's sources which is an inactive project.

Demo will be added hopefully.

License

GNU General Public License (v3)

Copyright

Copyright (c) 2016-2023,orhun

About

PIC16F877A based 5V/20MHz development board and PIC programmer

Topics

Resources

License

Stars

Watchers

Forks

Sponsor this project

  •  

Packages

No packages published

[8]ページ先頭

©2009-2025 Movatter.jp