We are running a survey to help us improve the experience for all of our members. If you see the survey appear, please take the time to tell us about your experience if you can.
#include "absacc.h" #include "math.h" #include <intrins.h> #include <reg51.h> #include "stdio.h" //------------------------------------------------------------------------------- //划线函数 void Line( unsigned char x1, unsigned char y1, unsigned char x2, unsigned char y2, bit Mode) {unsigned char x,y; double k,b; unsigned i; if( 1) // |k|<=1 {k=(float)(y2-y1) / (float)(x2-x1) ; b=y1-k*x1; if( x1 <= x2 ) {for(x=x1;x<=x2;x++) {i=i+2.7; } } } } void main() {unsigned i; Line(0,0,23,34,1); P1=34; jj:goto jj; } This programme can run well in Keil UV2 ,but can't run along in my target board. But I revised the state i=i+2.7; to i=i+2;,and the programme can run well. why?
You seem to have managed to use the HTML tags for bold and italic, so why not the 'pre' tag for your code - like it said in the instructions?! "But I revised the state i=i+2.7; to i=i+2;" Your i is an integer - why were you incrementing it by 2.7?! What were you expecting to happen?