VHDL과 함께 문제가 코드 않는 잘못을 이해하지

S

shaolomc32

Guest
내가 DC 모터의 속도를 변경하기위한 간단한 코드를 작성합니다. 코드 속도를 확인하고 PWM 값을 변경합니다. 하지만 프로그램의 컴파일 successful.I 오류 massege를 못하고 의미를 모르겠어요. 답변을 주시기 바랍니다. 여기에 코드와 잘못된 마사지가 : 코드 :
Code:
 라이브러리 IEEE; 사용 ieee.std_logic_1164.all, 법인 TEST_MASHOV입니다 포트 (CLK, RST : 비트에서, R, C : 정수 범위 0-255, pwm_out : 버퍼 정수 범위 0-255), 최종, 신호 상태, 아키텍처 TEST_MASHOV의 행동은 형식 일 (medida, lit_slower, big_slower, lit_faster, big_faster 가지)이다 : 일, - 신호 CC, CCC : 정수 범위 0-255; 시작 - CC
 
신호 정의를 한 번 봐. 수락 신호의 일부가 운전 신호와 같은 너비로하지 않습니다 수 있습니다. 그것은 VHDL에 사용할 아니에요. 예를 들면 다음과 같습니다 'A'가 벡터 (0 downto 7) 및 신호로 정의됩니다 신호면 (0 downto 6)로 정의한다. 당신은 쓸 수 없습니다
 
오류가 게시한 코드에 있지 않습니다.
 
[견적은 = shaiko; 1,006,550] 신호 정의를 한 번 봐. 수락 신호의 일부가 운전 신호와 같은 너비로하지 않습니다 수 있습니다. 그것은 VHDL에 사용할 아니에요. 예를 들면 다음과 같습니다 'A'가 벡터 (0 downto 7) 및 신호로 정의됩니다 신호면 (0 downto 6)로 정의한다. 당신은 쓸 수 없습니다
 
그것은 pwm_out 255보다 크고 따라서 8 비트의 범위 밖으로 가을이된다고 할 수 있습니다. 그러나 TrickyDicky가 쓴 같은 라인 표시는 라인 1347입니다. 그 줄을보고 있어야합니다.
 
1347 :이 줄 번호를 필요가 없습니다. 코드는 거의 30 라인입니다. 이게 바로 내가 gess, 잘못되지 않도록 두번째 - 최대 높이가 내 프로젝트에서 PWM의 질주는 255 RPM입니다.
 
[견적] 두번째 - 최대 높이가 이것이 잘못되지 않도록 255 RPM의 내 프로젝트에서 PWM의 질주, 내가 gess [/ 인용] 그럼 아마이 문제입니다. [코드] 때 big_faster => 경우 pwm_out
 
그것이 이번 경우는 아닌 것 VHDL 구문 오류에 의해 triggerred의 경우에도 내부 오류는 일반적으로, 도구 버그를 참조합니다. 당신의 도구는 무엇입니까? [견적] pwm_out는 254 (경우 스위치의 범위에서) 때, 그래서 10 따라서 264. [/ 인용] 두 가지 의견을 pwm_out에 추가됩니다. 합성 도구는 일반적으로 정수 범위 0-255에서 (0 downto 7) 서명되지 않은 추론되므로 논의 범위 위반은 간단한 오버플로 처리됩니다. 실제 값이 범위 위반을 초래하는 경우 Modelsim과 같은 시뮬레이터는 반대로, 시뮬레이션 오류를 일으킬 것입니다.
 
나는 문제가 이것입니다 it.maybe 수정하려고합니다. 덕분에 많은 [COLOR = "실버"] [SIZE = 1 ]---------- 게시물 11시 53분에 추가 ---------- 이전 게시물 11시 35분에 있었어요 - --------[/ 크기] [/COLOR] 내가 당신 suggessted.it 모두가 작동하지 않은 모든 sokutions보십시오! 코드의 마지막 변경 vriable의 종류에 대해 행해지며 이것이 제가받은 잘못된 마사지입니다 [COLOR 것은 = "# FF0000"는] 라인 22 : 오류를 보조하기 : 전화 회선 24 interpretsubprogram 수 없습니다 오류 보조 : 전화를 interpretsubprogram 수 없습니다 [/COLOR] 변화가 새로운 코드가 표시됩니다 코드 조각 : R, C : [COLOR = "# 00FF00"] bit_vector (0 downto 7)에서, [/COLOR] pwm_out :. [COLOR = "# 00FF00 "] 버퍼 정수 범위 0-255), [/COLOR] 때 lit_faster => [COLOR ="# 00FF00 "]한다면 pwm_out
 
이제는 사소한 VHDL 구문 오류로 돌리는거야. 당신은 비트 벡터와 arithmetics을 수행할 수 없습니다.
 
안녕하세요 제가 질문을 이해하려고 "어떤 도구를 내가 사용하고?" 당신은 무엇을 의미합니까? 칩의 종류에 대해서는 그래서 UP2의 개발 키트에서 CPLD 칩에 사용하는 경우. 맥스 plussII 소프트웨어 사용합니다.
 
최대 플러스 2는 아주 오래된 소프트웨어와의 VHDL 지원을 매우 가난합니다. (약 10 살 지금!) 나는 quartus 및 modelsim으로 업그레이 드하는 것이 좋습니다.
 
상황은 지금은 맥스 Pluss 같이 일한 것입니다.
 
감사 시도에 대한 모든 대답에 대해 많은 저를 도와
 

Welcome to EDABoard.com

Sponsor

Back
Top