40 likes | 47 Views
Business Matters. Sign-up for CSE466 mailing list (majordomo) I will generally distribute notes for lecture after using them Establish a rotation for design meeting write-up – alphabetical? Quizzes are open book Go to the 466/schedule link for links to lecture notes, labs, etc.
E N D
Business Matters • Sign-up for CSE466 mailing list (majordomo) • I will generally distribute notes for lecture after using them • Establish a rotation for design meeting write-up – alphabetical? • Quizzes are open book • Go to the 466/schedule link for links to lecture notes, labs, etc. • If you have a home PC, get the tools! • The Documents • Instruction set • Architecture overview (8051 Standards) • Hardware Description – Applies to all Atmel 8051 Variants (89C55 is like the 89C52 but less flash program memory) • 89C55 DataSheet, specifics for our part. Timer2, Electrical Specs, etc. • Online: Keil Getting Started Guide, C51 Manual, A51 Manual, BL51 Manual CSE 370 - Fall 1999 - Introduction - 1
Resource Analysis of Temp Controller Total MIPS = 4090, at 2MIPS, that .02% utilization Note: local variable, if any are not counted. Is this okay? How about Stack? CSE 370 - Fall 1999 - Introduction - 2
Lab1 Review • Things to Note: • Avoid excessive use of variables (data memory) • Avoid excessive use of subroutine calls (stack) • Avoid use of floating point (stack, memory, computation) • To see statistics and assembly result • Go to target->options->listing and choose what you want to see in the listing file generated by the compiler (.LST), and in the Linker output file (.M51). • Go to the debugger and look at the disassembly window • Other useful things • Code coverage indicator in the debugger • Peripherals menu for looking at pins and buffers • Debug Functions (scripts for putting patterns on pins during sim) • Serial interface simulator for UI debug CSE 370 - Fall 1999 - Introduction - 3
A Good Lab1 Solution #include <At89C55.h> void main(void) { register unsigned int i,j; // tells compiler to use regs while (1) { for (i = 0; i < 8000; i++) for (j = 0; j < P2; j++); P1 ^= 0x01; } } 39 bytes of ROM, 0 bytes of RAM CSE 370 - Fall 1999 - Introduction - 4