Presentation is loading. Please wait.

Presentation is loading. Please wait.

Temperature Measurement

Similar presentations


Presentation on theme: "Temperature Measurement"— Presentation transcript:

1 Temperature Measurement
ECE 448: Lab 6 Using PicoBlaze Temperature Measurement Serial Communication

2 Sources P. Chu, FPGA Prototyping by VHDL Examples
Chapter 14, Picoblaze Overview Chapter 15, Picoblaze Assembly Code Development Chapter 16, Picoblaze I/O Interface Chapter 17, Picoblaze Interrupt Interface ECE 448 – FPGA and ASIC Design with VHDL

3 A[7..0] DO[7..0] DI[7..0] to DS1620 RST DQ CLK INSTRUCTION ROM Buttons
SSD3 SSD2 INPUT TEMP_STATUS TEMP_CTRL OUTPUT_INTERFACE INPUT_INTERFACE TEMP ADDR_DECODER DATA RAM PICOBLAZE INSTRUCTION ROM DO[7..0] DI[7..0] out_port A[7..0] port_id instruction address addr TA[7..0] din read_strobe write_strobe dout SSD3_en, SSD2_en, SSD1_en, SSD0_en TEMP_CTRL_en, RAM_wen, RAM_ren we re RAM_wen in_port interrupt interrupt_ack Four 7-segment displays TD[7..0] T_wen T_init SSD1 SSD0 register Buttons RST DQ CLK to DS1620

4 00 01 02 . . . 3F 40 41 42 43 44 45 46 FD FE FF 64 x 8 DATA RAM INPUT SSD3 SSD2 TEMP_STATUS TEMP_CTRL INPUT: A A – button active (bit cleared by reading register INPUT or by interrupt_ack), b3-b0 – status of buttons 3 to 0 respectively; 1 means that the button was pressed. b0 b1 b2 b3 TEMP_STATUS: D D – done: bit cleared by writing to register TEMP_CTRL, set after TEMP generates 64 8-bit numbers. MNO – current measurement number, changing from 0 to 63. TEMP_CTRL: M M – measure: after 1 is written to this bit, TEMP performs 64 temperature measurements, and stores the results in DATA RAM. SSD1 SSD0 MAX MIN AVR MNO

5 Task 1 – Browsing Mode 64x8 RAM Two 7-Segment Displays (in hexadecimal
notation) (SSD3-SSD2) Address Data 00 01 02 03 04 05 …. 3B 3C 3D 3E 3F 00 01 02 03 04 05 …. 3B 3C 3D 3E 3F Current Address Value at Current Address Button 1 = Increment Address Button 0 = Decrement Address Two 7-Segment Displays (in hexadecimal notation) (SSD1-SSD0) 64x8 RAM

6 Task 2 – Editing Mode 64x8 RAM Two 7-Segment Displays (SSD3-SSD2)
(in hexadecimal notation) Address Data 00 01 02 03 04 05 …. 3B 3C 3D 3E 3F 00 01 02 03 04 05=>06 …. 3B 3C 3D 3E 3F Value at Current Address Two 7-Segment Displays (SSD1-SSD0) (in hexadecimal notation) Current Address Button 1 = Increment Address Button 0 = Decrement Address Button 2= Edit Button 1 = Increment Data Button 0 = Decrement Data Button 2= Approve 64x8 RAM

7 Task 3 – Temperature Measurement Mode
Address Data 00 01 02 03 04 05 …. 3B 3C 3D 3E 3F 4D 4E 4F 50 52 …. 5F 60 62 63 64 Button 3 = Start 64 Temperature Measurements 64x8 RAM

8 Task 4 – Calculation Mode
Address Data 00 01 02 03 04 05 …. 3B 3C 3D 3E 3F FD FE FF 4D 4E 4F 50 52 …. 5F 60 62 63 64 56 Button 3= calculating maximum, minimum, and average Maximum, minimum, and average are stored in memory locations at positions FD, FE, and FF respectively, and displayed using SSD3-SSD1 in hexadecimal notation. MAX => MIN => AVR => 64x8 RAM

9 Introduction to Picoblaze Development Environment (Hands-on Session)


Download ppt "Temperature Measurement"

Similar presentations


Ads by Google