The Atmel AVR series consists of high-quality microcontrollers featuring a comprehensive instruction set, which has led to the development of numerous effective compilers, eliminating the need to learn assembly language. One notable compiler is the BASCOM/AVR from MCS Electronics, which has been utilized for software prototyping on the 90S2313 robot board. This compiler is favored for two main reasons: its extensive command syntax and the fact that a demo version is available for free, supporting up to 2K of instruction memory, which aligns perfectly with the 90S2313's capabilities. The board is designed to integrate an IRPD chip and a Serial Servo Chip for controlling the robot's "eyes" and "legs," respectively. Given that the 2313 lacks analog-to-digital (A2D) functionality, an MCP3202 dual-channel A2D chip, which operates via SPI, has been incorporated. To facilitate debugging, a MAX232 circuit has been added to the hardware UART of the 2313 chip. The board has been confirmed to be fully operational. BASCOM/AVR now supports the control of up to eight servos in the background, reducing the necessity for the SSC chip, which uses a single I/O line to manage four servos. The test code for the board includes functionality to test the servo using a software UART on a designated output pin, checks the IRPD by detecting motion, blinks an LED to demonstrate single-bit output, and retrieves A2D input from the MCP3202. The A2D ports are configured for easy integration of a trim pot. Additionally, the system verifies the RS232 connection to a PC by sending print commands. This test software effectively demonstrates serial, digital, and SPI input/output capabilities. The programming of the board is accomplished via a five-pin dongle connected to the parallel port of a PC in the BASCOM/AVR setup. For further details on this layout, the Dontronics Newbie AVR site offers an excellent introduction to AVR and BASCOM/AVR, along with information about the DT006 experimenters board.
The Atmel AVR microcontroller series is well-regarded for its versatility and ease of use, particularly in robotic applications. The 90S2313 microcontroller, a member of this series, is adept at handling various tasks due to its rich instruction set. The integration of the BASCOM/AVR compiler facilitates rapid development, allowing for effective prototyping without the need for in-depth knowledge of assembly language. The demo version of BASCOM/AVR, which supports up to 2K of instruction memory, is particularly advantageous for hobbyists and developers working with the 90S2313, as it provides a fully functional environment for development.
The robot board design leverages the IRPD chip for vision and a Serial Servo Chip for locomotion, showcasing the microcontroller's ability to interface with multiple components. The addition of the MCP3202 A2D converter enhances the board's capability to process analog signals, which is crucial for applications requiring sensor input. The choice of a SPI interface for the MCP3202 allows for fast data communication, essential for real-time processing in robotic systems.
Debugging is made easier with the inclusion of the MAX232, which enables reliable serial communication between the microcontroller and a PC. This setup not only assists in debugging but also provides a means to monitor system performance and behavior during operation. The test code exemplifies the board's functionality, demonstrating the integration of various input and output methods, including serial communication, digital output, and A2D conversion.
Overall, the design and implementation of the 90S2313 robot board illustrate the capabilities of the Atmel AVR series in creating sophisticated robotic systems. The combination of a robust compiler, versatile microcontroller, and a well-thought-out circuit design enables developers to create effective and efficient robotic solutions.The Atmel AVR series are very good microcontrollers with quite a rich instruction set, rich enough that lots of folks have good compilers for them so we don`t have to learn their assembler. A very rich compiler available is the BASCOM/AVR compiler from MCS Electronics. I`ve used this compiler for prototyping the software on my 90S2313 robot board for two reasons: One, It has a very rich command syntax; Two, its free in its demo version! The demo version only supports 2K of instruction memory, other than that it is completely uncrippled. The 90S2313 has 2K of instruction memory - See the pattern I designed this board to use my IRPD chip and my Serial Servo Chip to handle the "eyes" and the "legs" of this robot board respectively.
Because the 2313 does not have A2D capability, I also added the SPI based MCP3202 dual channel A2D chip. Finally, because I like to have some kind of debug capability, I added the MAX232 circuit to the hardware UART on the 2313 chip.
Currently all that I have done is make sure that the board is fully functional. Note that BASCOM/AVR now has the ability to control up to 8 servos in the background - My SSC chip will take up less system overhead, but with this new capability, it really isn`t needed. However, note that the SSC chip uses one I/O line and controls 4 servos. Below is the test code for the board. It tests out the servo by using the software UART on an arbitrary output pin, then tests the IRPD (waving hands in front of it a bit), then it blinks an LED on a port to show single bit output and finally grabs A2D input from the MCP3202 - The A2D ports are designed so that I can just stick a trim pot into them and twidling it.
Incidentally, it also checks out the RS232 connection to the PC by printing to it. So this test software shows how to do serial, digital and SPI input/output! Very nice. Here is a link to the actual file. The board is programmed with a 5 pin dongle that plugs onto the board and is connected to the PeeCee parallel port in the BASCOM/AVR configuration. See the Dontronics Newbie AVR site for info on this layout - He has a wonderful introduction to AVR and BASCOM/AVR there.
While you`re there, check out his DT006 experimenters board, very cool. 🔗 External reference
By utilizing logic chips, the behavior of a robot can be enhanced, allowing for the implementation of more complex algorithms.
Logic chips, also known as logic gates or digital logic integrated circuits, are fundamental components in digital electronics that perform...
Short circuits or broken PCB tracks can be easily identified using a multimeter; however, this tool may yield inaccurate results when testing the efficiency of a transistor or diode unless the component is unsoldered and removed from the PCB....
This is a straightforward X-Y oscilloscope design utilizing an ATmega324P microcontroller and two KAD0820 analog-to-digital converters (similar to National Semiconductor's ADC0820). The initial version of this oscilloscope was based on an AT90S4414, necessitating the use of external ADCs. Various...
A scoreboard is located in the center of the room, which will be controlled from backstage. The scoreboard features two individual 3-digit numbers. Whenever the score changes, a sound will be emitted. The simplest, most efficient, and cost-effective solution...
All Things Pros discusses various topics related to patent prosecution. It provides strategies for addressing rejections under sections 102, 103, 101, and 112, often in the context of Board of Patent Appeals and Interferences (BPAI) decisions. The content also...
1Hz Clock Generator Circuit with Chip On Board (COB). The COBs used in different watches may differ somewhat in their configuration. However, through trial and error, one can identify the appropriate points corresponding to points A, B, C, and...
We use cookies to enhance your experience, analyze traffic, and serve personalized ads.
By clicking "Accept", you agree to our use of cookies.
Learn more