Binary Count on LEDs Where Buttons Control Directon and Speed
https://embeddedcentric.com/zedboard-tutorials/
Follow the tutorial for lab 1 in the link provided above.
The LEDs display a binary count from 1 to 255 (00000001 to 11111111) and the buttons control the speed and direction of the counting.
Helpful Hints and Clarifications:
H Step 2 --> Site = Package Pin I/O std
Also instead of using PUTTY we used minicom. GTKterm could also be used. To install and run minicom, refer to Emily's post titled Minicom.
Button Functions:
BTNU (Top Button): Value of val = 1 Counts up from 1 to 255
BTNC (Center Button): Value of val = -1 Counts down from 255 to 1
BTNL (Left Button): Medium Speed
BTND (Bottom Button): Slowest Speed
BTNR (Right Button): Fastest Speed
Understanding the code:
out = out + val
value of out = value of out plus the value of val
General Facts and Definitions Taken Directly From the Tutorial, Lab 1, in the link provided above:
A GPIO is a General Purpose Input/Output that provides a general purpose input/output interface to any external peripheral that you want to include in your design (buttons, LEDs ect.).
lab1.c is the application responsible for initializing and configuring the GPIOs to display a binary count on the LEDs.
The AXI GPIO provides a general purpose input/output interface, that can be configured as either a single or a dual-channel device, and the width of each channel is independently configurable
The AXI Interconnect is responsible for connecting the ARM processor in the PS to the AXI GPIO. AXI is the protocol of communication between the ARM processor and the different peripherals.
The ZYNQ7 Processing System block allows you to edit any property of the Zynq PS, this includes clock frequency settings, reset polarities, interrupts, memory interfaces, I/O peripherals and more.
Follow the tutorial for lab 1 in the link provided above.
The LEDs display a binary count from 1 to 255 (00000001 to 11111111) and the buttons control the speed and direction of the counting.
Helpful Hints and Clarifications:
H Step 2 --> Site = Package Pin I/O std
T18 LVCMOS25
R18 LVCMOS25
R16 LVCMOS25
P16 LVCMOS25
N15 LVCMOS25
For the IO PortsAlso instead of using PUTTY we used minicom. GTKterm could also be used. To install and run minicom, refer to Emily's post titled Minicom.
Button Functions:
BTNU (Top Button): Value of val = 1 Counts up from 1 to 255
BTNC (Center Button): Value of val = -1 Counts down from 255 to 1
BTNL (Left Button): Medium Speed
BTND (Bottom Button): Slowest Speed
BTNR (Right Button): Fastest Speed
Understanding the code:
out = out + val
value of out = value of out plus the value of val
General Facts and Definitions Taken Directly From the Tutorial, Lab 1, in the link provided above:
A GPIO is a General Purpose Input/Output that provides a general purpose input/output interface to any external peripheral that you want to include in your design (buttons, LEDs ect.).
lab1.c is the application responsible for initializing and configuring the GPIOs to display a binary count on the LEDs.
The AXI GPIO provides a general purpose input/output interface, that can be configured as either a single or a dual-channel device, and the width of each channel is independently configurable
The AXI Interconnect is responsible for connecting the ARM processor in the PS to the AXI GPIO. AXI is the protocol of communication between the ARM processor and the different peripherals.
The ZYNQ7 Processing System block allows you to edit any property of the Zynq PS, this includes clock frequency settings, reset polarities, interrupts, memory interfaces, I/O peripherals and more.
- PS-PL Configuration: Configuring processing system –programmable logic Interface (if any), we have four possible methods for interfacing the PS-PL, which one to select is actually a decision made with regards to the bandwidth and the size of the data to be exchanged between the two.
- Peripheral I/O Pins and MIO configuration: The Zynq-7000 PS has over 20 hard peripherals controllers available. You can route these peripherals directly to the dedicated Multiplexed I/Os (MIO) on the device, or through the Extended Multiplexed I/Os (EMIOs) routing to the fabric(PL). These interfaces also lets you select I/O standards and slew settings for the I/O. The I/O peripheral block appears with a checkmark when you enable a peripheral. The block design depicts the status of enabled and disabled peripherals.
- Clock Configuration: Different peripheral could run on different clocks, the Clock Configuration tab configure different clock domains in the Zynq-7000 device.
- DDR Configuration: Configure all aspects related to the DDR, which is the main memory of the board.
- SMC timing calculation: Static Memory Controller information that can be used as primary boot device.
- Interrupts: Configure both PL->PS and PS -> PL interrupts.
- ****NOTE: you can always reset these setting back to the default values by clicking on Presets button in the top bar then select the ZedBoard Development Board Template!
Comments
Post a Comment