From 7d538f7a60e45b24394c4e9282d1f7312bcde8da Mon Sep 17 00:00:00 2001 From: RossTheRoss Date: Sun, 9 Feb 2020 09:51:39 -0600 Subject: s p a c i n g --- Lab_2B.X/lab2b_asm.s | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'Lab_2B.X/lab2b_asm.s') diff --git a/Lab_2B.X/lab2b_asm.s b/Lab_2B.X/lab2b_asm.s index 4b983c2..3c3e19e 100644 --- a/Lab_2B.X/lab2b_asm.s +++ b/Lab_2B.X/lab2b_asm.s @@ -19,7 +19,7 @@ _wait_1ms: nop return -_write_0: ;2 cycles for function call +_write_0: ;2 cycles for function call inc LATA ;1 repeat #3 ;1 for load nop ;3+1=4 nop @@ -29,7 +29,7 @@ _write_0: ;2 cycles for function call return ;3 return -_write_1: ;2 cycle call +_write_1: ;2 cycle call inc LATA ;1 repeat #10;1 load nop ;1+10=11 nop -- cgit v1.2.3 From 02d5204a1ae23b759888ba55c0458d1471281eae Mon Sep 17 00:00:00 2001 From: RossTheRoss Date: Sun, 9 Feb 2020 12:38:01 -0600 Subject: ? --- Lab_2B.X/lab2b_asm.s | 14 +++++++------- Lab_2B.X/lab2b_c.c | 14 +++++++------- 2 files changed, 14 insertions(+), 14 deletions(-) (limited to 'Lab_2B.X/lab2b_asm.s') diff --git a/Lab_2B.X/lab2b_asm.s b/Lab_2B.X/lab2b_asm.s index 3c3e19e..675987e 100644 --- a/Lab_2B.X/lab2b_asm.s +++ b/Lab_2B.X/lab2b_asm.s @@ -21,19 +21,19 @@ _wait_1ms: _write_0: ;2 cycles for function call inc LATA ;1 - repeat #3 ;1 for load - nop ;3+1=4 nop + repeat #2 ;1 for load + nop ;2+1=3 nop clr LATA ;1 - repeat #6 ;1 for load - nop ;1+6=7 nop + repeat #7 ;1 for load + nop ;1+7=8 nop return ;3 return _write_1: ;2 cycle call inc LATA ;1 - repeat #10;1 load - nop ;1+10=11 nop + repeat #8 ;1 load + nop ;1+9=10 nop clr LATA ;1 - nop ;1 + nop ;1 return ;3 return \ No newline at end of file diff --git a/Lab_2B.X/lab2b_c.c b/Lab_2B.X/lab2b_c.c index 893c812..4976231 100644 --- a/Lab_2B.X/lab2b_c.c +++ b/Lab_2B.X/lab2b_c.c @@ -25,7 +25,7 @@ void setup(void) { TRISB = 0x0000; wait_100us(); } -void writeColor(int r, int g, int b); +void writeColor(short r, short g, short b); void loop(void); int main(void) { @@ -35,8 +35,8 @@ int main(void) { return 0; } -void writeColor(int r, int g, int b) { - int i = 0; +void writeColor(short r, short g, short b) { + short i = 0; LATA = 0x0000; wait_100us(); //RED @@ -46,7 +46,7 @@ void writeColor(int r, int g, int b) { } else { write_0(); } - r >> 1; + r >>= 1; ++i; } //GREEN @@ -56,7 +56,7 @@ void writeColor(int r, int g, int b) { } else { write_0(); } - g >> 1; + g >>= 1; --i; } //BLUE @@ -66,7 +66,7 @@ void writeColor(int r, int g, int b) { } else { write_0(); } - b >> 1; + b >>= 1; ++i; } } @@ -108,7 +108,7 @@ void loop(void) { // write_0(); // write_0(); // write_0(); - +// writeColor(255, 155, 0); } } -- cgit v1.2.3 From 3371ce7e13681190e4446836c908e53fd993d959 Mon Sep 17 00:00:00 2001 From: RossTheRoss Date: Sun, 9 Feb 2020 12:52:07 -0600 Subject: Fix some dumb stuff --- Lab_2B.X/lab2b_asm.s | 77 ++++++++++++++++++++++++++-------------------------- 1 file changed, 39 insertions(+), 38 deletions(-) (limited to 'Lab_2B.X/lab2b_asm.s') diff --git a/Lab_2B.X/lab2b_asm.s b/Lab_2B.X/lab2b_asm.s index 675987e..ddee29b 100644 --- a/Lab_2B.X/lab2b_asm.s +++ b/Lab_2B.X/lab2b_asm.s @@ -1,39 +1,40 @@ -.include "xc.inc" - -.text ;BP (put the following data in ROM(program memory)) - -; This is a library, thus it can *not* contain a _main function: the C file will -; define main(). However, we -; we will need a .global statement to make available ASM functions to C code. -; All functions utilized outside of this file will need to have a leading -; underscore (_) and be included in a comment delimited list below. -.global _write_0, _write_1, _wait_100us, _wait_1ms - -_wait_100us: - repeat #1593 - nop - return - -_wait_1ms: - repeat #15993 - nop - return - -_write_0: ;2 cycles for function call - inc LATA ;1 - repeat #2 ;1 for load - nop ;2+1=3 nop - clr LATA ;1 - repeat #7 ;1 for load - nop ;1+7=8 nop - return ;3 return - - -_write_1: ;2 cycle call - inc LATA ;1 - repeat #8 ;1 load - nop ;1+9=10 nop - clr LATA ;1 - nop ;1 - return ;3 return +.include "xc.inc" + +.text ;BP (put the following data in ROM(program memory)) + +; This is a library, thus it can *not* contain a _main function: the C file will +; define main(). However, we +; we will need a .global statement to make available ASM functions to C code. +; All functions utilized outside of this file will need to have a leading +; underscore (_) and be included in a comment delimited list below. +.global _write_0, _write_1, _wait_100us, _wait_1ms + +_wait_100us: + repeat #1593 + nop + return + +_wait_1ms: + repeat #15993 + nop + return + +_write_0: ;2 cycles for function call + inc LATA ;1 + repeat #2 ;1 for load + nop ;2+1=3 nop + clr LATA ;1 + repeat #6 ;1 for load + nop ;1+6=7 nop + return ;3 return + + +_write_1: ;2 cycle call + inc LATA ;1 + repeat #8 ;1 load + nop ;1+9=10 nop + clr LATA ;1 + nop ;1 + nop ;1 + return ;3 return \ No newline at end of file -- cgit v1.2.3