| 
 
	
		
			
			Новичок
			
		
	
 
			
			
			
				
			
			Регистрация: 02.03.2012 
				
				
			
					Сообщений: 193
				
				
				 Репутация: 14 
![]()  | 
	
 
			
			Решил(пока только в протеусе) из матрици сделать что-то вроде графического дисплея. К матрице подключил PIC16f877 все работает, буквы выводил спокойно. Теперь нужно организовать передачу данных к этому пику например от таковоже. Вот часть программы: 
		
		
		
			PORTA=0b010110; PORTB=c; PORTC=d; for(i=0; i<100; i++) { i++; i--; } PORTA=0b010111; PORTB=RD; PORTC=b; for(i=0; i<100; i++) { i++; i--; } цикл for только для задержке. В трех случаях выводам на матрицу я присваиваю переменные а, в,с, d. Если я вручную пишу a=255 весь полустолбик загорается. Но нужно чтобы значение а присваивалось из порта d. В одном случае я пишу PORTB=RD; и ничего не происходит. А вот если PORTB=RD0; например то все работает, но ведь мне нужно из всего порта d инфо читать. Схема прилогается.  | 
||
| 
 
Оценка
 
 | 
| 
 
	
		
			
			Новичок
			
		
	
 
			
			
			
				
			
			Регистрация: 02.03.2012 
				
				
			
					Сообщений: 193
				
				
				 Репутация: 14 
![]()  | 
	
 
			
			Ну что, никто не знает как обратится к 8 битам порта?
		 
		
		
		
		
		
		
		
	 | 
||
| 
 
Оценка
 
 | 
| 
 
	
		
			
			Эксперт
			
		
	
 
			
			
			
				
			
			Регистрация: 08.11.2009 
				
				
			
					Сообщений: 2,309
				
				
				 Репутация: 643 
![]() ![]() ![]() ![]() ![]() ![]()  | 
	
 
			
			если выкладываете код - пользуйтесь кнопкой CODE (#) на панели инструментов 
		
		
		
		
		
		
		
	ну человек двадцать этого форума гарантированно знают как, дальше что? написать его за вас? или соизволите потратить 20-30 минут на изучение даташита разделы 3.4-3.5, чтобы не писать бред типа Код: 
	PORTB=RD или PORTB=RD0 ЗЫ хочешь получить нормальный ответ - выкладывай полный проект, а ни куски схемы и кода  | 
||
| 
 
Оценка
 
 | 
| 
 
	
		
			
			Новичок
			
		
	
 
			
			
			
				
			
			Регистрация: 02.03.2012 
				
				
			
					Сообщений: 193
				
				
				 Репутация: 14 
![]()  | 
	
  Спасибо большое, все работает. Но почему так?Если читать из порта D например я пишу RD0 или RD1 . Причем у pic16f877 читается только из порта D. (Писать TRISx=0b11111111 не забываю) Надо писать вместо RD0 PORTD0 так чтоли, тогда из всех портов читаться будет?  | 
||
| 
 
Оценка
 
 | 
| 
 
	
		
			
			Новичок
			
		
	
 
			
			
			
				
			
			Регистрация: 02.03.2012 
				
				
			
					Сообщений: 193
				
				
				 Репутация: 14 
![]()  | 
	
  | 
||
| 
 
Оценка
 
 | 
| Обратная связь РадиоЛоцман Вверх |