PIC18+TFT_320QWT_mikroBasic
17.08.2015, 18:14
|
|
|
Гуру портала
Регистрация: 20.11.2004
Сообщений: 9,979
Сказал спасибо: 928
Сказали Спасибо 2,261 раз(а) в 1,557 сообщении(ях)
|
Re: PIC18+TFT_320QWT_mikroBasic
Dtolok, а теперь листинги сравни...
__________________
Осторожно , злой кот
|
|
|
|
17.08.2015, 18:18
|
|
|
Гражданин KAZUS.RUN
Регистрация: 28.11.2007
Адрес: харьков
Сообщений: 850
Сказал спасибо: 339
Сказали Спасибо 43 раз(а) в 23 сообщении(ях)
|
Re: PIC18+TFT_320QWT_mikroBasic
вы думаете в микрос или в микробейсике он будет отличаться???  извините а вы на ассемблере программы вообще писали???
|
|
|
|
17.08.2015, 18:38
|
|
|
Почётный гражданин KAZUS.RUN
Регистрация: 08.06.2008
Сообщений: 1,393
Сказал спасибо: 4
Сказали Спасибо 183 раз(а) в 167 сообщении(ях)
|
Re: PIC18+TFT_320QWT_mikroBasic
Сравните со своим барсиком 
Как чукчи блин - что вижу то и пою. Что первое взбредет в голову то и пишем в программе.
А потом рассуждаем о С, о барсике  Ученье- свет!!! Неученых - тьма !!!
|
PHP код:
|
void drawLine(int x1, int y1, int x2, int y2)
{
int deltaX = abs(x2 - x1);
int deltaY = abs(y2 - y1);
int signX = x1 ‹ x2 ? 1 : -1;
int signY = y1 ‹ y2 ? 1 : -1;
int error = deltaX - deltaY;
setPixel(x2, y2);
while(x1 != x2 || y1 != y2)
{
setPixel(x1, y1);
const int error2 = error * 2;
if(error2 › -deltaY)
{
error -= deltaY;
x1 += signX;
}
if(error2 ‹ deltaX)
{
error += deltaX;
y1 += signY;
}
}
}
|
|
|
|
|
17.08.2015, 18:51
|
|
|
Гражданин KAZUS.RUN
Регистрация: 28.11.2007
Адрес: харьков
Сообщений: 850
Сказал спасибо: 339
Сказали Спасибо 43 раз(а) в 23 сообщении(ях)
|
Re: PIC18+TFT_320QWT_mikroBasic
то что запись короче - не означает что запись в ассемблере тоже будет короче! это всего лишь - синтаксис !!!!!!!!!!!! для вас напомню что все для МК это или "0" или "1"!!!!!!! и как бы вы не изголялись на Си -› это всего лишь "0" или "1" !!!! то же идля барсика и для паскаля и т.д. и т.п.... или вы свято верите что уложив в одну строчку выражение вы автоматически на выходе получите оду команду ассемблера при этом она еще и будет выполнена в один такт?! бу га га!!!
|
|
|
|
17.08.2015, 18:58
|
|
|
Почётный гражданин KAZUS.RUN
Регистрация: 08.06.2008
Сообщений: 1,393
Сказал спасибо: 4
Сказали Спасибо 183 раз(а) в 167 сообщении(ях)
|
Re: PIC18+TFT_320QWT_mikroBasic
Для нас не надо - Вы для себя в основном усвойте о чем судачите.
А мы, думаю, на клаву давили, когда Вы еще на горшке сидели .
|
|
|
|
17.08.2015, 19:19
|
|
|
Гражданин KAZUS.RUN
Регистрация: 28.11.2007
Адрес: харьков
Сообщений: 850
Сказал спасибо: 339
Сказали Спасибо 43 раз(а) в 23 сообщении(ях)
|
Re: PIC18+TFT_320QWT_mikroBasic
все таки верите - одно выражение - одна команда МК и один так выполнения!
|
|
|
|
17.08.2015, 19:23
|
|
|
Гуру портала
Регистрация: 20.11.2004
Сообщений: 9,979
Сказал спасибо: 928
Сказали Спасибо 2,261 раз(а) в 1,557 сообщении(ях)
|
Re: PIC18+TFT_320QWT_mikroBasic
Dtolok, Где листинги, заблудший вы наш ... 
И что Мы знаем и что можем - дело десятое, здесь и сейчас важно - во что ты уверовал ...
__________________
Осторожно , злой кот
Последний раз редактировалось dosikus; 17.08.2015 в 19:27.
|
|
|
|
17.08.2015, 20:16
|
|
|
Гражданин KAZUS.RUN
Регистрация: 28.11.2007
Адрес: харьков
Сообщений: 850
Сказал спасибо: 339
Сказали Спасибо 43 раз(а) в 23 сообщении(ях)
|
Re: PIC18+TFT_320QWT_mikroBasic
вот пожалуйста:
|
Цитата:
|
int a;
int b;
int m;
void main() {
PORTC = 0; // Initialize PORTC
TRISC = 0; // Configure PORTC as output
a = 200;
b = 300;
if (a › b )
{ m = a; }
while(1) {
PORTC = ~PORTC; // toggle PORTC
Delay_ms(1000); // one second delay
}
|
ассемблер:
|
Цитата:
|
ADDRESS OPCODE ASM
; ----------------------------------------------
$0000 $2804 GOTO _main
$0004 $ _main:
;Led_Blinking.c,22 :: void main() {
;Led_Blinking.c,23 :: PORTC = 0; // Initialize PORTC
$0004 $1303 BCF STATUS, RP1
$0005 $1283 BCF STATUS, RP0
$0006 $0187 CLRF PORTC, 1
;Led_Blinking.c,24 :: TRISC = 0; // Configure PORTC as output
$0007 $1683 BSF STATUS, RP0
$0008 $0187 CLRF TRISC, 1
;Led_Blinking.c,25 :: a = 200;
$0009 $30C8 MOVLW 200
$000A $1283 BCF STATUS, RP0
$000B $00A0 MOVWF _a
$000C $01A1 CLRF _a+1
;Led_Blinking.c,26 :: b = 300;
$000D $302C MOVLW 44
$000E $00A2 MOVWF _b
$000F $3001 MOVLW 1
$0010 $00A3 MOVWF _b+1
;Led_Blinking.c,28 :: { m = a; }
$0011 $ L_main_0:
;Led_Blinking.c,29 :: while(1) {
$0011 $ L_main_1:
;Led_Blinking.c,30 :: PORTC = ~PORTC; // toggle PORTC
$0011 $0987 COMF PORTC, F
;Led_Blinking.c,31 :: Delay_ms(1000); // one second delay
$0012 $300B MOVLW 11
$0013 $00FC MOVWF STACK_12
$0014 $30FF MOVLW 255
$0015 $00FB MOVWF STACK_11
$0016 $30FF MOVLW 255
$0017 $00FA MOVWF STACK_10
$0018 $0BFC DECFSZ STACK_12, F
$0019 $281B GOTO $+2
$001A $2822 GOTO $+8
$001B $0BFB DECFSZ STACK_11, F
$001C $281E GOTO $+2
$001D $2821 GOTO $+4
$001E $0BFA DECFSZ STACK_10, F
$001F $281E GOTO $-1
$0020 $281B GOTO $-5
$0021 $2818 GOTO $-9
$0022 $3033 MOVLW 51
$0023 $00FB MOVWF STACK_11
$0024 $30FF MOVLW 255
$0025 $00FA MOVWF STACK_10
$0026 $0BFB DECFSZ STACK_11, F
$0027 $2829 GOTO $+2
$0028 $282C GOTO $+4
$0029 $0BFA DECFSZ STACK_10, F
$002A $2829 GOTO $-1
$002B $2826 GOTO $-5
$002C $3088 MOVLW 136
$002D $00FA MOVWF STACK_10
$002E $0BFA DECFSZ STACK_10, F
$002F $282E GOTO $-1
;Led_Blinking.c,32 :: }
$0030 $2811 GOTO L_main_1
;Led_Blinking.c,33 :: }
$0031 $2831 GOTO $
|
то же на барсике:
|
Цитата:
|
dim a,b,m as word
main:
' Main program
PORTC = 0
TRISC = 0
a = 200
b = 300
if a › b then
m = a
end if
while(1)
PORTC = not PORTC
Delay_ms(1000)
wend
end.
|
и ассемблер:
|
Цитата:
|
_main:
;MyProject.mbas,6 :: main:
;MyProject.mbas,8 :: PORTC = 0
CLRF PORTC+0
;MyProject.mbas,9 :: TRISC = 0
CLRF TRISC+0
;MyProject.mbas,10 :: a = 200
MOVLW 200
MOVWF _a+0
CLRF _a+1
;MyProject.mbas,11 :: b = 300
MOVLW 44
MOVWF _b+0
MOVLW 1
MOVWF _b+1
;MyProject.mbas,13 :: m = a
L__main2:
;MyProject.mbas,15 :: while(1)
L__main5:
;MyProject.mbas,16 :: PORTC = not PORTC
COMF PORTC+0, 1
;MyProject.mbas,17 :: Delay_ms(1000)
MOVLW 11
MOVWF R11+0
MOVLW 38
MOVWF R12+0
MOVLW 93
MOVWF R13+0
L__main9:
DECFSZ R13+0, 1
GOTO L__main9
DECFSZ R12+0, 1
GOTO L__main9
DECFSZ R11+0, 1
GOTO L__main9
NOP
NOP
;MyProject.mbas,18 :: wend
GOTO L__main5
L_end_main:
GOTO $+0
; end of _main
|
|
|
|
|
17.08.2015, 20:25
|
|
|
Гражданин KAZUS.RUN
Регистрация: 28.11.2007
Адрес: харьков
Сообщений: 850
Сказал спасибо: 339
Сказали Спасибо 43 раз(а) в 23 сообщении(ях)
|
Re: PIC18+TFT_320QWT_mikroBasic
причем до смешного - ROM барсика 0.4% а ROM Си - 1%
|
|
|
|
17.08.2015, 20:25
|
|
|
Гуру портала
Регистрация: 20.11.2004
Сообщений: 9,979
Сказал спасибо: 928
Сказали Спасибо 2,261 раз(а) в 1,557 сообщении(ях)
|
Re: PIC18+TFT_320QWT_mikroBasic
Сообщение от Dtolok
|
|
вот пожалуйста:
|
Может вообще одну строчку приведешь?
Где листинги кода с выводом линий ?
Сообщение от Dtolok
|
|
причем до смешного
|
Смешно здесь то что - ты не видишь в чем разница , а так же твое утверждение :
Сообщение от Dtolok
|
|
вы думаете в микрос или в микробейсике он будет отличаться???
|
__________________
Осторожно , злой кот
Последний раз редактировалось dosikus; 17.08.2015 в 20:56.
|
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
| Тема |
Автор |
Раздел |
Ответов |
Последнее сообщение |
|
Глупый вопрос. Как писать EEPROM PIC18?
|
Easyrider83 |
Микроконтроллеры, АЦП, память и т.д |
4 |
09.01.2011 19:55 |
|
C++ для PIC18
|
alberio |
Микроконтроллеры, АЦП, память и т.д |
5 |
07.07.2010 17:48 |
|
Автономный программатор для PIC18
|
avartemiy |
Микроконтроллеры, АЦП, память и т.д |
3 |
23.04.2010 12:34 |
|
PIC18 реализация I2C proteus
|
dima80 |
Микроконтроллеры, АЦП, память и т.д |
1 |
01.06.2009 11:50 |
|
Обновление IAR Embedded Workbench for Microchip PIC18
|
i8051 |
Микроконтроллеры, АЦП, память и т.д |
2 |
29.05.2008 15:35 |
Часовой пояс GMT +4, время: 11:07.
|
|