아두이노 > Single Chip AVR BASIC Computer

TODAY837 TOTAL605,466
사이트 이용안내
Login▼/회원가입
최신글보기 질문게시판 기술자료 동영상강좌

아두이노 센서 ATMEGA128 PWM LED 초음파 AVR 블루투스 LCD UART 모터 적외선


BASIC4MCU | 아두이노 | 아두이노 | Single Chip AVR BASIC Computer

페이지 정보

작성자 키트 작성일2017-09-13 13:17 조회753회 댓글0건

본문

Single Chip AVR BASIC Computer

A computer running the BASIC programming language, generating composite video and reading PS/2 keyboard input using a single AVR.


DESCRIPTION
A single AVR microcontroller (the ATmega 1284P) has been used to create a standalone computer system which runs the BASIC programming language. The 1284P runs TinyBASIC Plus, generates composite video signals (using TVout) and reads PS/2 keyboard input. 

A single sided PCB was used to hold all the components meaning it is easy to manufacture the computer at home using processes such as photo-etching. Additionally, the component count is fairly low and only one IC is required (the 1284P).
DETAILS

 

I created this project as a sort of follow up to my Arduino BASIC Shied project which used a custom designed shield to turn the Arduino UNO into a computer running the BASIC programming language. The shield worked correctly but two reasons made me decide to design a new computer; the TVout resolution was low meaning some of the lines were wrapped onto next line and an Arduino was required to operate the computer (it was not entirely standalone). I decided to design a new computer which would still run BASIC but use only a single AVR microcontroller to keep circuit design simple, the component count low and the cost down.

After managing to find a PS2 keyboard library which worked with TVout without causing any issues, I modified the TinyBASIC Plus sketch to use TVout and the PS2 keyboard (rather than serial) and tested it the ATmega 1284P (I am using the Arduino bootloader and IDE to program to the 1284P) which worked correctly. It was then a simple case of designing a PCB and sending it off to be manufactured. I was able to keep the PCB single sided by using two jumper parts (two 0 ohm resistors). The build instructions on this page explain the process of building the computer step by step.

Once the computer had been completed, I had a functioning standalone system which uses a single AVR microcontroller.

The computer has some of the GPIO pins of the 1284P mapped to female pin headers allowing components to be connected. Pin headers are also used to allow the power supply rails to be connected to. By connecting a PS2 keyboard, composite video enable display (such as a TV which has a yellow RCA socket) and a power supply (such as a PP3 battery), the computer can be used and programmed in BASIC. The EEPROM of the 1284P is used to save the BASIC programs to.

Ideally, I would like to have included an SD card for program storage but I was having issues with the FILES command (the TinyBASIC command) displaying random characters on the TV. Autorun BASIC programs are found and run fine (when an SD card is attached) but the FILES command does not show a list of files on the SD card like it is supposed to (rather the random characters). I am unsure of the issue which is causing this (it may be linked to the variable types used to store the file names and the different variables used by TVout but I am unsure) so I did not include an SD card. If this issue was fixed, I would include an SD card on a future version.

In summary, I have been able to create a standalone computer system running the BASIC programming language with composite video generation and PS2 keyboard reading using only a single AVR microcontroller.

 

COMPONENTS
  • 1×ATmega 1284P
  • 1×DIL 40 Pin 0.6" IC Holder
  • 1×16MHz Crystal
  • 2×22pF Ceramic Capacitors
  • 1×2.1mm Barrel Jack
  • 1×L7805 Voltage Regulator
  • 1×0.1uF Electrolytic Capacitor
  • 1×0.33uF Electrolytic Capacitor
  • 1×RCA PCB Mount Socket
  • 1×PS/2 Mini Din PCB Mount Socket

See all components

PROJECT LOGS
  • *Update* - PCBs & Component Kits

    3 months ago • 0 comments

    7407391431815431299.jpeg

    9478821431815446708.jpg

    More PCBs and component kits are now available on Tindie. The kits contain all the components required to assemble the PCB to create a fully working computer.

    See the links on the left hand side of the page. Additional information can be found on my website:http://www.danselectronic.systems/projects/avr-basic-computer-v0-1/

    I currently have 10 kits available and 14 PCBs.

     

  • New PCBs

    8 months ago • 0 comments

     

    3039351417897312927.JPG

    The design of this computer has been updated and I have PCBs available for sale through eBay (using the link on the left - "Purchase PCBs"); the direct linkhttp://www.ebay.co.uk/itm/121510974344

    A new page dedicated to this new computer design has been created:https://hackaday.io/project/3537-avr-basic-computer-v01

    This design includes an additional EEPROM IC to allow full size BASIC programs to be saved. The PCBs are white in colour with ENIG finish.

     

  • New PCBs and assembly

    a year ago • 0 comments

     

    6495541408035344584.JPG

    I have received the new PCBs and assembled one of them which can be seen in the above image. A few changes have been made to the design of the PCB compared to the previous PCB including:

    - Changing of the naming of the computer (now V0.x - this PCB is v0.3)

    - Added a USBasp programming header

    - Added a female header labelled "Storage" which allows a small PCB containing a 25LC640 EEPROM IC to be connected (see below images). A male pin header labelled "MEM Select" allows the user to select between the internal and external EEPROM for saving BASIC programs to. This feature was added to allow larger programs to be saved as the ATmega 1284P only has 4KB internal EEPROM.

    - Mapped all GPIO pins which are not in use to male pin headers (except analogue reference).

    - This PCB was also designed in KiCAD rather than Fritzing.

    2260731408035678829.JPG

    1279271408035696246.JPG

    8738691408035708746.JPG

    3232871408035726007.JPG

    6579701408035750680.JPG

    6395801408035777049.JPG

    7412361408035791461.JPG

    The remaining PCBs have been put on eBay and can be found at the following link:

    http://www.ebay.co.uk/itm/Single-Chip-AVR-BASIC-Computer-V0-3-Printed-Circuit-Board-PCB-Black-Colour-/121410644845?

    I have started a new HaD projects page which focuses only on this new PCB (single chip computer V0.3); this new page will contain a link to the firmware, the schematic, some details and possibly more. The following link is for the new project page:

    https://hackaday.io/project/2428-Single-Chip-AVR-BASIC-Computer-V0.3


댓글 0

조회수 753

등록된 댓글이 없습니다.

아두이노HOME > 아두이노 > 전체 목록

아두이노 목록
제목 작성자 작성일 조회
61 아두이노 Adafruit Motor/Stepper/Servo Shield for Arduino kit - v1.2 이미지 키트 17-09-13 1073
60 아두이노 가스센서 이미지 키트 17-09-13 1031
59 아두이노 Arduino Waveform Generator 이미지 키트 17-09-13 822
58 아두이노 Arduino Waveform Generator 키트 17-09-13 810
57 아두이노 Arduino Waveform Generator 이미지 키트 17-09-13 1020
56 아두이노 Exclusive 2.5 GHz Frequency Counter 이미지 키트 17-09-13 2169
55 아두이노 AVR SIMULATOR IDE 이미지 키트 17-09-13 698
54 아두이노 Marlin 이미지 키트 17-09-13 773
53 아두이노 opencircuits.com - Oscilloscope 이미지 키트 17-09-13 792
52 아두이노 Zorkduino 키트 17-09-13 774
51 아두이노 Single Chip AVR BASIC Computer V0.1 키트 17-09-13 834
50 아두이노 Single Chip AVR BASIC Computer V0.3 키트 17-09-13 842
현재글 아두이노 Single Chip AVR BASIC Computer 키트 17-09-13 754
48 아두이노 Single Chip Computer: Easy to produce AVR BASIC Computer 이미지 키트 17-09-13 828
47 아두이노 Arduino Realtime Audio Processing 이미지 키트 17-09-13 768
게시물 검색

2019년 1월 2월 3월 4월 5월 6월 7월 8월 9월 10월 11월 12월
2018년 1월 2월 3월 4월 5월 6월 7월 8월 9월 10월 11월 12월
Privacy Policy
MCU BASIC ⓒ 2017
모바일버전으로보기